home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1994 #2 / Monster Media No. 2 (Monster Media)(1994).ISO / pcboard / edsb121b.zip / EDSFILE.001 (.txt) next >
PCBoard Programming Language Executable  |  1994-05-01  |  59KB  |  3,643 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 2.OO (plain) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Boolean  BOOLEAN001
  20.     Boolean  BOOLEAN002
  21.     Boolean  BOOLEAN003
  22.     Boolean  BOOLEAN004
  23.     Boolean  BOOLEAN005
  24.     Boolean  BOOLEAN006
  25.     Boolean  BOOLEAN007
  26.     Boolean  BOOLEAN008
  27.     Boolean  BOOLEAN009
  28.     Boolean  BOOLEAN010
  29.     Boolean  BOOLEAN011
  30.     Boolean  BOOLEAN012
  31.     Boolean  BOOLEAN013
  32.     Boolean  BOOLEAN014
  33.     Boolean  BOOLEAN015
  34.     Boolean  BOOLEAN016
  35.     Boolean  BOOLEAN017
  36.     Boolean  BOOLEAN018
  37.     Boolean  BOOLEAN019
  38.     Boolean  BOOLEAN020
  39.     Boolean  BOOLEAN021
  40.     Boolean  BOOLEAN022
  41.     Boolean  BOOLEAN023
  42.     Boolean  TBOOLEAN024(4)
  43.     Boolean  TBOOLEAN025(3)
  44.     Boolean  BOOLEAN026
  45.     Boolean  BOOLEAN027
  46.     Boolean  BOOLEAN028
  47.     Boolean  BOOLEAN029
  48.     Boolean  BOOLEAN030
  49.     Boolean  BOOLEAN031
  50.     Boolean  BOOLEAN032
  51.     Boolean  BOOLEAN033
  52.     Date     DATE002
  53.     Date     DATE003
  54.     Date     TDATE004(5)
  55.     Date     DATE005
  56.     Date     DATE006
  57.     Date     DATE007
  58.     Date     DATE008
  59.     Date     DATE009
  60.     Integer  INTEGER003
  61.     Integer  INTEGER004
  62.     Integer  INTEGER005
  63.     Integer  INTEGER006
  64.     Integer  INTEGER007
  65.     Integer  INTEGER008
  66.     Integer  INTEGER009
  67.     Integer  INTEGER010
  68.     Integer  INTEGER011
  69.     Integer  INTEGER012
  70.     Integer  INTEGER013
  71.     Integer  INTEGER014
  72.     Integer  INTEGER015
  73.     Integer  INTEGER016
  74.     Real     REAL001
  75.     String   STRING006
  76.     String   STRING007
  77.     String   STRING008
  78.     String   STRING009
  79.     String   STRING010
  80.     String   STRING011
  81.     String   STRING012
  82.     String   STRING013
  83.     String   STRING014
  84.     String   STRING015
  85.     String   STRING016
  86.     String   STRING017
  87.     String   STRING018
  88.     String   STRING019
  89.     String   STRING020
  90.     String   STRING021
  91.     String   STRING022
  92.     String   STRING023
  93.     String   STRING024
  94.     String   TSTRING025(6)
  95.     String   STRING026
  96.     String   TSTRING027(11)
  97.     String   STRING028
  98.     String   STRING029
  99.     String   STRING030
  100.     Time     TIME001
  101.     Time     TTIME002(5)
  102.     Time     TIME003
  103.     Time     TIME004
  104.     Time     TIME005
  105.     Byte     BYTE001
  106.     Byte     BYTE002
  107.     Byte     BYTE003
  108.     Byte     BYTE004
  109.     Byte     BYTE005
  110.     Byte     BYTE006
  111.     Byte     BYTE007
  112.     Byte     BYTE008
  113.     Byte     BYTE009
  114.     Byte     BYTE010
  115.     Byte     BYTE011
  116.     Byte     BYTE012
  117.     Byte     BYTE013
  118.     Byte     BYTE014
  119.     Byte     BYTE015
  120.     Byte     BYTE016
  121.     Byte     BYTE017
  122.     Byte     TBYTE018(1)
  123.     Byte     BYTE019
  124.     Byte     BYTE020
  125.     Byte     TBYTE021(5)
  126.     Byte     BYTE022
  127.     Byte     BYTE023
  128.     Byte     BYTE024
  129.     Word     WORD001
  130.     Word     WORD002
  131.     Word     WORD003
  132.     Word     WORD004
  133.     Word     WORD005
  134.     Word     WORD006
  135.     Word     WORD007
  136.     Word     WORD008
  137.     Word     WORD009
  138.     Word     WORD010
  139.  
  140.     BOOLEAN015 = 0
  141.     GetUser
  142.     BOOLEAN001 = 0
  143.     BOOLEAN002 = 0
  144.     STRING026 = ReadLine(PCBDat(), 53)
  145.     STRING021 = Strip(Strip(Strip(Strip(Strip(U_HVPhone, " "), "("), ")"), "-"), "+")
  146.     STRING022 = Strip(Strip(Strip(Strip(Strip(U_BDPhone, " "), ")"), "("), "-"), "+")
  147.     DATE009 = 0
  148.     BOOLEAN008 = 0
  149.     GetToken STRING008
  150.     If (Strip(Upper(STRING008), " ") == "CBONLY") BOOLEAN008 = 1
  151.     If (Exist(PPEPath() + "EDSBTXT" + LangExt())) Goto LABEL003
  152.     If (Exist(PPEPath() + "EDSBTXT")) Goto LABEL001
  153.     PrintLn "@X0CEDSBACK FATAL ERROR: EDSBTXT" + LangExt() + " not found!"
  154.     Log "EDSBACK FATAL ERROR: EDSBTXT" + LangExt() + " not found!", 0
  155.     PrintLn 
  156.     Wait
  157.     Goto LABEL118
  158.     Goto LABEL002
  159.     :LABEL001
  160.     FOpen 5, PPEPath() + "EDSBTXT", 0, 0
  161.     If (Ferr(5)) Then
  162.         BOOLEAN019 = 1
  163.     Else
  164.         BOOLEAN019 = 0
  165.     Endif
  166.     If (BOOLEAN019) Then
  167.         OpText "EDSBTXT"
  168.         WORD004 = 9
  169.         Gosub LABEL114
  170.         If (BOOLEAN027) DispStr STRING029
  171.         PrintLn 
  172.         WORD004 = 8
  173.         Gosub LABEL114
  174.         If (BOOLEAN027) Log STRING029 + " EDSBTXT", 0
  175.         WORD004 = 27
  176.         Gosub LABEL114
  177.         If (BOOLEAN027) Log STRING029, 0
  178.         FClose 5
  179.         Goto LABEL118
  180.     Endif
  181.     :LABEL002
  182.     Goto LABEL004
  183.     :LABEL003
  184.     FOpen 5, PPEPath() + "EDSBTXT" + LangExt(), 0, 0
  185.     If (Ferr(5)) Then
  186.         BOOLEAN019 = 1
  187.     Else
  188.         BOOLEAN019 = 0
  189.     Endif
  190.     If (BOOLEAN019) Then
  191.         OpText "EDSBTXT" + LangExt()
  192.         WORD004 = 9
  193.         Gosub LABEL114
  194.         If (BOOLEAN027) DispStr STRING029
  195.         PrintLn 
  196.         WORD004 = 8
  197.         Gosub LABEL114
  198.         If (BOOLEAN027) Log STRING029 + " EDSBTXT" + LangExt() , 0
  199.         WORD004 = 27
  200.         Gosub LABEL114
  201.         If (BOOLEAN027) Log STRING029, 0
  202.         FClose 5
  203.         Goto LABEL118
  204.     Endif
  205.     :LABEL004
  206.     WORD004 = 1
  207.     Gosub LABEL114
  208.     If (BOOLEAN027) DispStr STRING029
  209.     WORD004 = 60
  210.     Gosub LABEL114
  211.     If (BOOLEAN027) Log STRING029 + " " + String(Time()) , 0
  212.     Gosub LABEL112
  213.     Gosub LABEL068
  214.     RdUNet PcbNode()
  215.     If (BOOLEAN005) Then
  216.         WrUNet PcbNode(), "B", UN_Name(), "EDSBack v1.21b    ", "EDSBack Initializing...", ""
  217.     Else
  218.         WrUNet PcbNode(), UN_Stat(), UN_Name(), "EDSBack v1.21b    ", "EDSBack Initializing...", ""
  219.     Endif
  220.     RdUNet PcbNode()
  221.     AdjTime WORD008
  222.     BYTE019 = 1
  223.     Gosub LABEL100
  224.     If (BOOLEAN022) Then
  225.         PrintLn 
  226.         WORD004 = 58
  227.         Gosub LABEL114
  228.         If (BOOLEAN027) DispStr STRING029
  229.         WORD004 = 59
  230.         Gosub LABEL114
  231.         If (BOOLEAN027) Log STRING029, 0
  232.         Goto LABEL118
  233.     Endif
  234.     Gosub LABEL092
  235.     Gosub LABEL094
  236.     Gosub LABEL096
  237.     If (BOOLEAN023) Gosub LABEL103
  238.     :LABEL005
  239.     If (BOOLEAN001) Goto LABEL015
  240.     STRING008 = "C"
  241.     If (BOOLEAN032) Goto LABEL006
  242.     WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "EDSBack Main Menu", ""
  243.     DispFile PPEPath() + "EDSWC", 2 + 1 + 4
  244.     WORD004 = 15
  245.     Gosub LABEL114
  246.     BOOLEAN011 = 0
  247.     InputStr STRING029 + STRING012, STRING008, 0, 1, "RrCcGgEeHh", 2 + 4 + 256
  248.     Goto LABEL007
  249.     :LABEL006
  250.     STRING008 = "C"
  251.     BOOLEAN032 = 0
  252.     :LABEL007
  253.     Select Case (Upper(STRING008))
  254.         Case "R"
  255.             BOOLEAN011 = 0
  256.             If (TBOOLEAN025(1)) Then
  257.                 BOOLEAN001 = 1
  258.                 Goto LABEL118
  259.             Else
  260.                 WORD004 = 54
  261.                 Gosub LABEL114
  262.                 If (BOOLEAN027) DispStr STRING029
  263.                 BOOLEAN001 = 0
  264.             Endif
  265.             STRING008 = "R"
  266.         Case "H"
  267.             BOOLEAN001 = 0
  268.             BOOLEAN011 = 0
  269.             WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Viewing Help File...", ""
  270.             DispFile TSTRING027(7), 1 + 2 + 4
  271.             STRING008 = "H"
  272.         Case "G"
  273.             BOOLEAN011 = 0
  274.             If (TBOOLEAN025(0)) Then
  275.                 BOOLEAN001 = 1
  276.                 WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Goodbye in EDSBack...", ""
  277.                 Bye
  278.             Else
  279.                 BOOLEAN001 = 0
  280.                 WORD004 = 54
  281.                 Gosub LABEL114
  282.                 If (BOOLEAN027) DispStr STRING029
  283.             Endif
  284.             STRING008 = "G"
  285.         Case "E"
  286.             BOOLEAN001 = 0
  287.             BOOLEAN011 = 0
  288.             If (BOOLEAN031) Goto LABEL008
  289.             WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Viewing Information...", ""
  290.             Gosub LABEL070
  291.             Goto LABEL009
  292.             :LABEL008
  293.             WORD004 = 54
  294.             Gosub LABEL114
  295.             If (BOOLEAN027) DispStr STRING029
  296.             :LABEL009
  297.             STRING008 = "E"
  298.         Case "C"
  299.             BOOLEAN001 = 0
  300.             BOOLEAN011 = 1
  301.             WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Selecting Number...", ""
  302.             Gosub LABEL071
  303.             STRING008 = "C"
  304.     End Select
  305.     If (BOOLEAN011) Then
  306.         Cls
  307.         DispFile PPEPath() + "SCDISP", 1 + 4
  308.         WORD004 = 2
  309.         Gosub LABEL114
  310.         If (BOOLEAN027) DispStr STRING029 + "    "
  311.         KbdChkOff
  312.         Gosub LABEL076
  313.         Gosub LABEL077
  314.         If (BOOLEAN014) Then
  315.             WORD004 = 32
  316.             Gosub LABEL114
  317.             If (BOOLEAN027) DispStr STRING029
  318.             WORD004 = 35
  319.             Gosub LABEL114
  320.             If (BOOLEAN027) Log STRING010 + "-" + STRING011 + "-" + STRING020 + " " + STRING029, 0
  321.             If (BOOLEAN030) Then
  322.                 MPrintLn 
  323.                 Color 15
  324.                 MPrint "Please wait for 5 seconds"
  325.                 SPrintLn Chr(27) + +"[2J"
  326.                 SPrintLn 
  327.                 SPrintLn "              ┌───────────────────────────────────────────────────┐"
  328.                 SPrintLn "              │                                                   │"
  329.                 SPrint "              │                 "
  330.                 Color 12
  331.                 SPrint "ATTENTION SYSOP                   "
  332.                 Color 15
  333.                 SPrintLn "│"
  334.                 SPrintLn "              │                                                   │"
  335.                 SPrint "              │       "
  336.                 Color 10
  337.                 SPrint "The user online has entered a number        "
  338.                 Color 15
  339.                 SPrintLn "│"
  340.                 SPrint "              │    "
  341.                 Color 10
  342.                 SPrint "that was found in the bad numbers database!    "
  343.                 Color 15
  344.                 SPrintLn "│"
  345.                 SPrintLn "              │                                                   │"
  346.                 SPrintLn "              └───────────────────────────────────────────────────┘"
  347.                 SPrintLn 
  348.                 INTEGER003 = Time()
  349.                 While (Time() - INTEGER003 <= 6) Do
  350.                     Sound 700
  351.                     Delay 2
  352.                     Sound 300
  353.                     Delay 2
  354.                 EndWhile
  355.                 Sound 0
  356.                 MPrintLn 
  357.                 Goto LABEL010
  358.             Endif
  359.             Delay 15
  360.             :LABEL010
  361.             WORD004 = 31
  362.             Gosub LABEL114
  363.             If (BOOLEAN027) DispStr STRING029
  364.             If (BOOLEAN006) Then
  365.                 Gosub LABEL119
  366.                 Bye
  367.                 Goto LABEL011
  368.             Endif
  369.             Goto LABEL118
  370.         Endif
  371.         :LABEL011
  372.         PrintLn 
  373.         Gosub LABEL080
  374.         WORD004 = 70
  375.         Gosub LABEL114
  376.         If (BOOLEAN027) DispStr STRING029
  377.         If (BOOLEAN018 && !TBOOLEAN025(2)) Then
  378.             If (TBOOLEAN025(3)) Then
  379.                 WORD004 = 3
  380.                 Gosub LABEL114
  381.                 If (BOOLEAN027) DispStr STRING029
  382.                 OpText STRING028
  383.                 WORD004 = 55
  384.                 Gosub LABEL114
  385.                 If (BOOLEAN027) DispStr STRING029
  386.                 OpText String(DATE003)
  387.                 WORD004 = 56
  388.                 Gosub LABEL114
  389.                 If (BOOLEAN027) DispStr STRING029
  390.                 OpText String(TIME001)
  391.                 WORD004 = 57
  392.                 Gosub LABEL114
  393.                 If (BOOLEAN027) DispStr STRING029
  394.                 Newline
  395.                 WORD004 = 31
  396.                 Gosub LABEL114
  397.                 If (BOOLEAN027) DispStr STRING029
  398.                 Newline
  399.                 Wait
  400.                 Goto LABEL012
  401.             Endif
  402.             WORD004 = 3
  403.             Gosub LABEL114
  404.             If (BOOLEAN027) DispStr STRING029
  405.             PrintLn 
  406.             WORD004 = 31
  407.             Gosub LABEL114
  408.             If (BOOLEAN027) DispStr STRING029
  409.             Newline
  410.             Wait
  411.             :LABEL012
  412.             Goto LABEL118
  413.         Endif
  414.         If (BOOLEAN017 && BOOLEAN012) Then
  415.             BYTE019 = 2
  416.             BOOLEAN022 = 0
  417.             Gosub LABEL100
  418.             If (BOOLEAN022) Then
  419.                 WORD004 = 48
  420.                 Gosub LABEL114
  421.                 If (BOOLEAN027) Log STRING029, 0
  422.                 WORD004 = 28
  423.                 Gosub LABEL114
  424.                 If (BOOLEAN027) DispStr STRING029
  425.                 If (!OnLocal() || BOOLEAN004) Then
  426.                     WORD004 = 21
  427.                     Gosub LABEL114
  428.                     If (BOOLEAN027) DispStr STRING029
  429.                     If (BYTE007 <> 0) U_Sec = BYTE007
  430.                     If (BYTE008 <> 0) U_ExpSec = BYTE008
  431.                     If (DATE009 <> 0) U_ExpDate = DATE009
  432.                     PutUser
  433.                 Endif
  434.                 Delay 15
  435.                 Goto LABEL118
  436.             Endif
  437.             If (BOOLEAN014) Then
  438.                 OpText String(BYTE007)
  439.                 WORD004 = 4
  440.                 Gosub LABEL114
  441.                 If (BOOLEAN027) DispStr STRING029
  442.                 If (!OnLocal() || BOOLEAN004) Then
  443.                     WORD004 = 21
  444.                     Gosub LABEL114
  445.                     If (BOOLEAN027) DispStr STRING029
  446.                     If (BYTE007 <> 0) U_Sec = BYTE007
  447.                     If (BYTE008 <> 0) U_ExpSec = BYTE008
  448.                     If (DATE009 <> 0) U_ExpDate = DATE009
  449.                     PutUser
  450.                 Endif
  451.                 Delay 15
  452.                 Goto LABEL118
  453.             Endif
  454.         Else
  455.             If (BOOLEAN014) Goto LABEL013
  456.             BYTE019 = 2
  457.             BOOLEAN022 = 0
  458.             Gosub LABEL100
  459.             If (BOOLEAN022) Then
  460.                 OpText String(BYTE007)
  461.                 WORD004 = 48
  462.                 Gosub LABEL114
  463.                 If (BOOLEAN027) Log STRING029, 0
  464.                 WORD004 = 28
  465.                 Gosub LABEL114
  466.                 If (BOOLEAN027) DispStr STRING029
  467.                 If (!OnLocal() || BOOLEAN004) Then
  468.                     WORD004 = 21
  469.                     Gosub LABEL114
  470.                     If (BOOLEAN027) DispStr STRING029
  471.                     If (BYTE007 <> 0) U_Sec = BYTE007
  472.                     If (BYTE008 <> 0) U_ExpSec = BYTE008
  473.                     If (DATE009 <> 0) U_ExpDate = DATE009
  474.                     PutUser
  475.                 Endif
  476.                 Delay 15
  477.                 Goto LABEL118
  478.             Endif
  479.             Goto LABEL014
  480.             :LABEL013
  481.             If (BOOLEAN014) Then
  482.                 OpText String(BYTE007)
  483.                 WORD004 = 4
  484.                 Gosub LABEL114
  485.                 If (BOOLEAN027) DispStr STRING029
  486.                 WORD004 = 5
  487.                 Gosub LABEL114
  488.                 If (BOOLEAN027) DispStr STRING029
  489.                 If (!OnLocal() || BOOLEAN004) Then
  490.                     WORD004 = 21
  491.                     Gosub LABEL114
  492.                     If (BOOLEAN027) DispStr STRING029
  493.                     If (BYTE007 <> 0) U_Sec = BYTE007
  494.                     If (BYTE008 <> 0) U_ExpSec = BYTE008
  495.                     If (DATE009 <> 0) U_ExpDate = DATE009
  496.                     PutUser
  497.                 Endif
  498.                 Delay 15
  499.                 Goto LABEL118
  500.             Endif
  501.         Endif
  502.         :LABEL014
  503.     Else
  504.         Goto LABEL005
  505.         :LABEL015
  506.         Goto LABEL118
  507.     Endif
  508.     Color 7
  509.     If (BOOLEAN012 && BOOLEAN017) Then
  510.         OpText STRING017 + "-" + STRING006 + "-" + STRING007
  511.     Else
  512.         OpText STRING010 + "-" + STRING011 + "-" + STRING020
  513.     Endif
  514.     DispFile PPEPath() + "EDSCAL", 1 + 4
  515.     WORD004 = 36
  516.     Gosub LABEL114
  517.     Delay 50
  518.     If (BOOLEAN027) Log STRING029 + " " + String(Time()) , 0
  519.     If (BOOLEAN012 && BOOLEAN017) Then
  520.         STRING008 = "(" + STRING018 + ") " + STRING017 + "-" + STRING006 + "-" + STRING007
  521.     Else
  522.         STRING008 = "(" + STRING018 + ") " + STRING010 + "-" + STRING011 + "-" + STRING020
  523.     Endif
  524.     WrUNet PcbNode(), UN_Stat(), UN_Name(), "Undergoing callback...", STRING008, ""
  525.     Gosub LABEL115
  526.     BOOLEAN020 = 0
  527.     BYTE004 = 0
  528.     If (OnLocal()) Goto LABEL028
  529.     CdChkOff
  530.     While (!BOOLEAN020 && (BYTE004 < BYTE003)) Do
  531.         KeyFlush
  532.         Color 7
  533.         DtrOff
  534.         BOOLEAN002 = 0
  535.         INTEGER006 = 0
  536.         Color 7
  537.         SPrint Chr(27) + "[7;51H"
  538.         Color 155
  539.         SPrint "Yes"
  540.         Color 7
  541.         While (!BOOLEAN002 && (INTEGER006 < BYTE012)) Do
  542.             Inc INTEGER006
  543.             INTEGER010 = 0
  544.             While (INTEGER010 <= WORD003) Do
  545.                 Inc INTEGER010
  546.                 Delay 1
  547.                 If (CDOn()) Then
  548.                     BOOLEAN002 = 0
  549.                     Continue
  550.                 Endif
  551.                 BOOLEAN002 = 1
  552.                 INTEGER010 = WORD003 + 1
  553.             EndWhile
  554.         EndWhile
  555.         Delay 65
  556.         If (BYTE004 >= 1) Delay 30
  557.         Color 7
  558.         SPrint Chr(27) + "[7;51H"
  559.         Color 27
  560.         SPrint "No "
  561.         If (BOOLEAN002) Goto LABEL016
  562.         Color 7
  563.         SPrint Chr(27) + "[11;15H"
  564.         Color 27
  565.         SPrint "Hangup failed...  Dropping carrier...                 "
  566.         Delay 4
  567.         Gosub LABEL119
  568.         Bye
  569.         :LABEL016
  570.         Delay 7
  571.         Color 7
  572.         SPrint Chr(27) + "[16;64H"
  573.         Color 28
  574.         SPrint "NONE  "
  575.         Color 7
  576.         SPrint Chr(27) + "[19;64H"
  577.         Color 28
  578.         SPrint "NONE  "
  579.         Color 7
  580.         SPrint Chr(27) + "[11;15H"
  581.         Color 23
  582.         DtrOn
  583.         KeyFlush
  584.         BOOLEAN019 = 0
  585.         If ((STRING023 <> "") && (STRING023 <> "NONE")) Then
  586.             SPrint "Initializing modem...                                 "
  587.             Delay 4
  588.             STRING023 = Trim(Upper(STRING023), " ")
  589.             SendModem STRING023 + Chr(13)
  590.             Color 7
  591.             SPrint Chr(27) + "[7;51H"
  592.             Color 155
  593.             SPrint "Yes"
  594.             STRING008 = ""
  595.             INTEGER006 = 0
  596.             While ((Len(STRING008) < 2) && (INTEGER006 <= 100)) Do
  597.                 STRING008 = STRING008 + Chr(MGetByte())
  598.                 STRING008 = Strip(Strip(Strip(STRING008, Chr(10)), Chr(13)), " ")
  599.                 Delay 1
  600.                 Inc INTEGER006
  601.             EndWhile
  602.             If (Mid(STRING008, 1, 2) == "OK") Then
  603.                 BOOLEAN019 = 1
  604.                 Goto LABEL017
  605.             Endif
  606.             BOOLEAN019 = 0
  607.             :LABEL017
  608.             Color 7
  609.             SPrint Chr(27) + "[7;51H"
  610.             Color 27
  611.             SPrint "No "
  612.             If (BOOLEAN019) Goto LABEL018
  613.             Color 7
  614.             SPrint Chr(27) + "[11;15H"
  615.             Color 23
  616.             SPrint "Error occurred during initialization...  Halting...   "
  617.             WORD004 = 37
  618.             Gosub LABEL114
  619.             If (BOOLEAN027) Log STRING029 + " " + String(Time()) , 0
  620.             Delay 10
  621.             KeyFlush
  622.             Gosub LABEL119
  623.             Bye
  624.             :LABEL018
  625.             Color 7
  626.             SPrint Chr(27) + "[11;15H"
  627.             Color 23
  628.             Delay 5
  629.             KeyFlush
  630.         Endif
  631.         STRING008 = ""
  632.         For INTEGER006 = 0 To 5
  633.             If (TBYTE021(INTEGER006) == 1) Then
  634.                 STRING008 = STRING008 + STRING014
  635.                 Continue
  636.             Endif
  637.             If (TBYTE021(INTEGER006) == 2) Then
  638.                 STRING008 = STRING008 + STRING024
  639.                 Continue
  640.             Endif
  641.             If (TBYTE021(INTEGER006) == 3) Then
  642.                 If (BOOLEAN017 && BOOLEAN012) Then
  643.                     STRING008 = STRING008 + STRING017
  644.                     Goto LABEL019
  645.                 Endif
  646.                 STRING008 = STRING008 + STRING010
  647.                 :LABEL019
  648.                 Continue
  649.             Endif
  650.             If (TBYTE021(INTEGER006) == 4) Then
  651.                 If (BOOLEAN017 && BOOLEAN012) Then
  652.                     STRING008 = STRING008 + STRING006
  653.                     Goto LABEL020
  654.                 Endif
  655.                 STRING008 = STRING008 + STRING011
  656.                 :LABEL020
  657.                 Continue
  658.             Endif
  659.             If (TBYTE021(INTEGER006) == 5) Then
  660.                 If (BOOLEAN017 && BOOLEAN012) Then
  661.                     STRING008 = STRING008 + STRING007
  662.                     Goto LABEL021
  663.                 Endif
  664.                 STRING008 = STRING008 + STRING020
  665.                 :LABEL021
  666.                 Continue
  667.             Endif
  668.             If (TBYTE021(INTEGER006) == 6) Then
  669.                 STRING008 = STRING008 + STRING015
  670.             Endif
  671.         Next
  672.         STRING008 = Upper(Strip(STRING008, " "))
  673.         If (STRING008 == "") Then
  674.             Color 7
  675.             SPrint Chr(27) + "[11;40H"
  676.             Color 23
  677.             SPrint "Dialing template does not contain dialing info!      "
  678.             Delay 10
  679.             Log "EDSBack could not dial! No info defined!", 0
  680.             Goto LABEL119
  681.             Bye
  682.         Endif
  683.         If (BYTE004 == 0) Then
  684.             SPrint Left("Dialing " + STRING008 + Space(55), 55)
  685.             Delay 9
  686.             WORD004 = 63
  687.             Gosub LABEL114
  688.             Log STRING029 + String(Time()), 0
  689.             Delay 5
  690.         Endif
  691.         Inc BYTE004
  692.         If (BYTE004 > 1) Then
  693.             Color 7
  694.             SPrint Chr(27) + "[11;15H"
  695.             Color 23
  696.             SPrint Left("Redialing " + STRING008 + Space(55), 55)
  697.             Delay 9
  698.             Color 7
  699.             SPrint Chr(27) + "[11;40H"
  700.             Color 23
  701.             SPrint "Try #" + String(BYTE004) + "                     "
  702.             WORD004 = 38
  703.             Gosub LABEL114
  704.             If (BOOLEAN027) Log STRING029 + " " + String(Time()) , 0
  705.             Delay 4
  706.         Endif
  707.         WORD004 = 49
  708.         Gosub LABEL114
  709.         Log STRING029 + Upper(STRING016) + STRING008, 0
  710.         Delay 9
  711.         KeyFlush
  712.         SendModem Upper(STRING016) + STRING008 + Chr(13)
  713.         Delay 9
  714.         WORD001 = 0
  715.         Color 7
  716.         SPrint Chr(27) + "[7;51H"
  717.         Color 155
  718.         SPrint "Yes"
  719.         Delay 54
  720.         Color 7
  721.         SPrint Chr(27) + "[7;51H"
  722.         Color 27
  723.         SPrint "No "
  724.         Color 7
  725.         SPrint Chr(27) + "[11;15H"
  726.         Color 23
  727.         SPrint "Waiting for connection...  Countdown:                "
  728.         SPrint Chr(27) + "[11;53H"
  729.         Color 28
  730.         SPrint String(WORD002)
  731.         STRING009 = ""
  732.         KeyFlush
  733.         STRING019 = ""
  734.         While (WORD001 <= WORD002) Do
  735.             Color 28
  736.             STRING008 = STRING008 + Chr(MGetByte())
  737.             STRING008 = Upper(Trim(STRING008, " "))
  738.             STRING019 = KInkey()
  739.             If (STRING019 == Chr(27)) Then
  740.                 Color 7
  741.                 SPrint Chr(27) + "[11;15H"
  742.                 Color 27
  743.                 SPrint "(L)ockout caller, (E)xit EDSBack, (C)ancel operation? "
  744.                 STRING019 = ""
  745.                 While (STRING019 == "") Do
  746.                     STRING019 = Upper(KInkey())
  747.                     If (STRING019 == "L") Then
  748.                         U_Sec = 0
  749.                         Color DefColor()
  750.                         Cls
  751.                         PutUser
  752.                         Gosub LABEL119
  753.                         Bye
  754.                         Continue
  755.                     Endif
  756.                     If (STRING019 == "E") Then
  757.                         Gosub LABEL119
  758.                         Bye
  759.                         Continue
  760.                     Endif
  761.                     If (STRING019 == "C") Then
  762.                         RestScrn
  763.                         KbdFlush
  764.                         Color 7
  765.                         SPrint Chr(27) + "[11;15H"
  766.                         Color 23
  767.                         SPrint "Waiting for connection...  Countdown:                "
  768.                         Continue
  769.                     Endif
  770.                     STRING019 = ""
  771.                 EndWhile
  772.                 STRING019 = ""
  773.             Endif
  774.             SPrint Chr(27) + "[11;53H"
  775.             SPrint String(WORD002 - WORD001)
  776.             INTEGER007 = Len(String(WORD002)) - Len(String(WORD002 - WORD001))
  777.             SPrint Space(INTEGER007)
  778.             If ((Len(STRING008) > 3) && (Mid(STRING008, Len(STRING008), 1) == Chr(10))) Then
  779.                 STRING008 = Strip(Strip(STRING008, Chr(10)), Chr(13))
  780.                 STRING009 = STRING009 + STRING008
  781.                 STRING008 = Strip(STRING008, " ")
  782.                 Color 7
  783.                 SPrint Chr(27) + "[11;15H"
  784.                 Color 23
  785.                 If (STRING008 == "BUSY") Then
  786.                     SPrintLn "Number is Busy...                                     "
  787.                     KeyFlush
  788.                     Delay 4
  789.                     BOOLEAN020 = 0
  790.                     WORD001 = WORD002 + 1
  791.                     Goto LABEL027
  792.                 Endif
  793.                 If (STRING008 == "RING") Then
  794.                     KeyFlush
  795.                     Delay 4
  796.                     BOOLEAN020 = 0
  797.                     WORD001 = WORD002 + 1
  798.                     Goto LABEL027
  799.                 Endif
  800.                 If (STRING008 == "NODIALTONE") Then
  801.                     SPrintLn "No Dialtone was Detected...                           "
  802.                     KeyFlush
  803.                     Delay 4
  804.                     BOOLEAN020 = 0
  805.                     WORD001 = WORD002 + 1
  806.                     Goto LABEL027
  807.                 Endif
  808.                 If (STRING008 == "NOCARRIER") Then
  809.                     SPrintLn "No carrier detected...                                "
  810.                     KeyFlush
  811.                     Delay 4
  812.                     BOOLEAN020 = 0
  813.                     WORD001 = WORD002 + 1
  814.                     Goto LABEL027
  815.                 Endif
  816.                 If (Mid(STRING008, 1, 4) == "CONN") Then
  817.                     WORD001 = 0
  818.                     BOOLEAN026 = 0
  819.                     SPrintLn "Link established... Pausing                           "
  820.                     Color 7
  821.                     SPrint Chr(27) + "[16;64H"
  822.                     Color 28
  823.                     SPrint Left(Trim(STRING026, " ") + Space(8), 8)
  824.                     Color 7
  825.                     SPrint Chr(27) + "[19;64H"
  826.                     Color 28
  827.                     SPrint Left(String(Carrier()) + Space(8), 8)
  828.                     WrUNet PcbNode(), UN_Stat(), UN_Name(), "Undergoing verification...", "CONNECT : " + Trim(STRING026, " ") + "  CARRIER : " + String(Carrier()), ""
  829.                     :LABEL022
  830.                     If (BOOLEAN026) Goto LABEL024
  831.                     SPrint Chr(27) + "[11;44H"
  832.                     SPrint String(WORD005 - WORD001)
  833.                     INTEGER007 = Len(String(WORD005)) - Len(String(WORD005 - WORD001))
  834.                     SPrint Space(INTEGER007)
  835.                     If (WORD001 >= WORD005) Then
  836.                         BOOLEAN026 = 1
  837.                         Goto LABEL023
  838.                     Endif
  839.                     BOOLEAN026 = 0
  840.                     :LABEL023
  841.                     Delay 1
  842.                     Inc WORD001
  843.                     Goto LABEL022
  844.                     :LABEL024
  845.                     WORD004 = 39
  846.                     Gosub LABEL114
  847.                     If (BOOLEAN027) Log STRING029 + " " + String(Time()) , 0
  848.                     Color 7
  849.                     SPrint Chr(27) + "[7;51H"
  850.                     Color 155
  851.                     SPrint "Yes"
  852.                     Delay 40
  853.                     If (Carrier() < 4800) Delay 30
  854.                     Color 7
  855.                     SPrint Chr(27) + "[7;51H"
  856.                     Color 27
  857.                     SPrint "No "
  858.                     BOOLEAN020 = 1
  859.                     KeyFlush
  860.                     If (BOOLEAN008) Goto LABEL025
  861.                     Gosub LABEL061
  862.                     CdChkOn
  863.                     KbdChkOn
  864.                     Gosub LABEL062
  865.                     Gosub LABEL031
  866.                     Goto LABEL118
  867.                     Goto LABEL026
  868.                     :LABEL025
  869.                     Gosub LABEL102
  870.                     CdChkOn
  871.                     KbdChkOn
  872.                     Goto LABEL118
  873.                     :LABEL026
  874.                     Goto LABEL027
  875.                 Endif
  876.                 STRING008 = ""
  877.             Endif
  878.             :LABEL027
  879.             Delay 1
  880.             Inc WORD001
  881.         EndWhile
  882.     EndWhile
  883.     If (!BOOLEAN020 && (BYTE004 >= BYTE003)) Then
  884.         Gosub LABEL119
  885.         Bye
  886.     Endif
  887.     Goto LABEL030
  888.     :LABEL028
  889.     Color 7
  890.     SPrint Chr(27) + "[11;15H"
  891.     Color 23
  892.     SPrint "Local caller detected...  Press any key to continue  "
  893.     While (KInkey() == "") Do
  894.     EndWhile
  895.     If (BOOLEAN008) Goto LABEL029
  896.     Gosub LABEL061
  897.     CdChkOn
  898.     KbdChkOn
  899.     Gosub LABEL062
  900.     Gosub LABEL031
  901.     Goto LABEL118
  902.     Goto LABEL030
  903.     :LABEL029
  904.     Gosub LABEL102
  905.     CdChkOn
  906.     KbdChkOn
  907.     Goto LABEL118
  908.     :LABEL030
  909.     Goto LABEL118
  910.     :LABEL031
  911.     If ((BYTE020 <> 0) || (Trim(TSTRING027(11), " ") <> "")) Then
  912.         WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Executing external extension...", ""
  913.         WORD004 = 67
  914.         Gosub LABEL114
  915.         If (BOOLEAN027) DispStr STRING029
  916.         If (BYTE020 == 1) Then
  917.             SaveScrn
  918.             Call TSTRING027(11)
  919.             RestScrn
  920.             Goto LABEL032
  921.         Endif
  922.         If (BYTE020 == 2) Then
  923.             WrUSys
  924.             Shell 1, INTEGER006, TSTRING027(11), ""
  925.             RdUSys
  926.             If (Exist(PPEPath() + "USERS.SYS")) Delete PPEPath() + "USERS.SYS"
  927.         Endif
  928.         :LABEL032
  929.         WORD004 = 68
  930.         Gosub LABEL114
  931.         If (BOOLEAN027) Log STRING029 + TSTRING027(11) , 0
  932.     Endif
  933.     WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Upgrading user...", ""
  934.     If (!OnLocal() || BOOLEAN004) Then
  935.         STRING028 = Upper(U_Name())
  936.         DATE003 = Date()
  937.         TIME001 = Time()
  938.         If (Exist(PPEPath() + "EDSSTATS.DAT")) Then
  939.             FOpen 1, PPEPath() + "EDSSTATS.DAT", 2, 2
  940.             If (Ferr(1)) Then
  941.                 BOOLEAN019 = 1
  942.                 Goto LABEL033
  943.             Endif
  944.             BOOLEAN019 = 0
  945.             :LABEL033
  946.             If (BOOLEAN019) Then
  947.                 OpText "EDSSTATS.DAT"
  948.                 WORD004 = 9
  949.                 Gosub LABEL114
  950.                 If (BOOLEAN027) DispStr STRING029
  951.                 WORD004 = 8
  952.                 Gosub LABEL114
  953.                 If (BOOLEAN027) Log STRING029 + " EDSSTATS.DAT", 0
  954.                 WORD004 = 10
  955.                 Gosub LABEL114
  956.                 If ((BOOLEAN017 && BOOLEAN012) && BOOLEAN027) Then
  957.                     Log STRING017 + STRING006 + STRING007 + " " + STRING029, 0
  958.                     Goto LABEL034
  959.                 Endif
  960.                 Log STRING010 + STRING011 + STRING020 + " " + STRING029, 0
  961.                 :LABEL034
  962.                 FClose 1
  963.                 Return
  964.             Endif
  965.             FSeek 1, 47, 0
  966.             FRead 1, INTEGER006, 4
  967.             Inc INTEGER006
  968.             FSeek 1, -4, 1
  969.             FWrite 1, INTEGER006, 4
  970.             FSeek 1, 39, 1
  971.             FRead 1, STRING008, 25
  972.             FRead 1, DATE005, 2
  973.             FRead 1, TIME003, 4
  974.             For INTEGER006 = 1 To 4
  975.                 FSeek 1, -62, 1
  976.                 FWrite 1, STRING008, 25
  977.                 FWrite 1, DATE005, 2
  978.                 FWrite 1, TIME003, 4
  979.                 FSeek 1, 31, 1
  980.                 FRead 1, STRING008, 25
  981.                 FRead 1, DATE005, 2
  982.                 FRead 1, TIME003, 4
  983.             Next
  984.             FSeek 1, -62, 1
  985.             FWrite 1, STRING008, 25
  986.             FWrite 1, DATE005, 2
  987.             FWrite 1, TIME003, 4
  988.             FWrite 1, STRING028, 25
  989.             FWrite 1, DATE003, 2
  990.             FWrite 1, TIME001, 4
  991.             Goto LABEL037
  992.         Endif
  993.         FCreate 1, PPEPath() + "EDSSTATS.DAT", 2, 2
  994.         If (Ferr(1)) Then
  995.             BOOLEAN019 = 1
  996.             Goto LABEL035
  997.         Endif
  998.         BOOLEAN019 = 0
  999.         :LABEL035
  1000.         If (BOOLEAN019) Then
  1001.             OpText "EDSSTATS.DAT"
  1002.             WORD004 = 9
  1003.             Gosub LABEL114
  1004.             If (BOOLEAN027) DispStr STRING029
  1005.             WORD004 = 8
  1006.             Gosub LABEL114
  1007.             If (BOOLEAN027) Log STRING029 + " EDSSTATS.DAT", 0
  1008.             WORD004 = 10
  1009.             Gosub LABEL114
  1010.             If ((BOOLEAN017 && BOOLEAN012) && BOOLEAN027) Then
  1011.                 Log STRING017 + STRING006 + STRING007 + " " + STRING029, 0
  1012.                 Goto LABEL036
  1013.             Endif
  1014.             Log STRING010 + STRING011 + STRING020 + " " + STRING029, 0
  1015.             :LABEL036
  1016.             FClose 1
  1017.             Return
  1018.         Endif
  1019.         FSeek 1, 0, 0
  1020.         FWrite 1, " EDSBack v1.21 Statistical Control File   " + Chr(13) + Chr(10) + Chr(32) + Chr(26) + Chr(0), 47
  1021.         FWrite 1, 1, 4
  1022.         FWrite 1, 0, 4
  1023.         FWrite 1, 0, 4
  1024.         For INTEGER006 = 1 To 5
  1025.             FWrite 1, "N/A", 25
  1026.             FWrite 1, 0, 2
  1027.             FWrite 1, 0, 4
  1028.         Next
  1029.         FWrite 1, Upper(U_Name()), 25
  1030.         FWrite 1, Date(), 2
  1031.         FWrite 1, Time(), 4
  1032.         FWrite 1, Space(20), 20
  1033.         :LABEL037
  1034.         FClose 1
  1035.         If (Exist(TSTRING027(0))) Then
  1036.             INTEGER006 = (FileInf(TSTRING027(0), 4) - 37) / 59
  1037.             BOOLEAN026 = 1
  1038.             Goto LABEL038
  1039.         Endif
  1040.         INTEGER006 = 0
  1041.         BOOLEAN026 = 0
  1042.         :LABEL038
  1043.         FOpen 1, TSTRING027(0), 1, 2
  1044.         If (Ferr(1)) Then
  1045.             BOOLEAN019 = 1
  1046.             Goto LABEL039
  1047.         Endif
  1048.         BOOLEAN019 = 0
  1049.         :LABEL039
  1050.         If (BOOLEAN019) Then
  1051.             OpText TSTRING027(0)
  1052.             WORD004 = 9
  1053.             Gosub LABEL114
  1054.             If (BOOLEAN027) DispStr STRING029
  1055.             WORD004 = 8
  1056.             Gosub LABEL114
  1057.             If (BOOLEAN027) Log STRING029 + TSTRING027(0) , 0
  1058.             WORD004 = 10
  1059.             Gosub LABEL114
  1060.             If ((BOOLEAN017 && BOOLEAN012) && BOOLEAN027) Then
  1061.                 Log STRING017 + STRING006 + STRING007 + " " + STRING029, 0
  1062.                 Goto LABEL040
  1063.             Endif
  1064.             Log STRING010 + STRING011 + STRING020 + " " + STRING029, 0
  1065.             :LABEL040
  1066.             FClose 1
  1067.             Return
  1068.         Endif
  1069.         If (Exist(PPEPath() + "TRASH.IDX")) Then
  1070.             FOpen 2, PPEPath() + "TRASH.IDX", 1, 2
  1071.             If (Ferr(2)) Then
  1072.                 BOOLEAN019 = 1
  1073.                 Goto LABEL041
  1074.             Endif
  1075.             BOOLEAN019 = 0
  1076.             :LABEL041
  1077.             If (BOOLEAN019) Then
  1078.                 OpText PPEPath() + "TRASH.IDX"
  1079.                 WORD004 = 9
  1080.                 Gosub LABEL114
  1081.                 If (BOOLEAN027) DispStr STRING029
  1082.                 WORD004 = 8
  1083.                 Gosub LABEL114
  1084.                 If (BOOLEAN027) Log STRING029 + PPEPath() + "TRASH.IDX", 0
  1085.                 WORD004 = 10
  1086.                 Gosub LABEL114
  1087.                 If ((BOOLEAN017 && BOOLEAN012) && BOOLEAN027) Then
  1088.                     Log STRING017 + STRING006 + STRING007 + " " + STRING029, 0
  1089.                     Goto LABEL042
  1090.                 Endif
  1091.                 Log STRING010 + STRING011 + STRING020 + " " + STRING029, 0
  1092.                 :LABEL042
  1093.                 FClose 1
  1094.                 FClose 2
  1095.                 Return
  1096.             Endif
  1097.             FSeek 2, 0, 2
  1098.             Goto LABEL045
  1099.         Endif
  1100.         FCreate 2, PPEPath() + "TRASH.IDX", 1, 2
  1101.         If (Ferr(2)) Then
  1102.             BOOLEAN019 = 1
  1103.             Goto LABEL043
  1104.         Endif
  1105.         BOOLEAN019 = 0
  1106.         :LABEL043
  1107.         If (BOOLEAN019) Then
  1108.             OpText PPEPath() + "TRASH.IDX"
  1109.             WORD004 = 9
  1110.             Gosub LABEL114
  1111.             If (BOOLEAN027) DispStr STRING029
  1112.             WORD004 = 8
  1113.             Gosub LABEL114
  1114.             If (BOOLEAN027) Log STRING029 + PPEPath() + "TRASH.IDX", 0
  1115.             WORD004 = 10
  1116.             Gosub LABEL114
  1117.             If ((BOOLEAN017 && BOOLEAN012) && BOOLEAN027) Then
  1118.                 Log STRING017 + STRING006 + STRING007 + " " + STRING029, 0
  1119.                 Goto LABEL044
  1120.             Endif
  1121.             Log STRING010 + STRING011 + STRING020 + " " + STRING029, 0
  1122.             :LABEL044
  1123.             FClose 1
  1124.             FClose 2
  1125.             Return
  1126.         Endif
  1127.         FSeek 2, 0, 0
  1128.         FWrite 2, " EDSBack v1.21 Trash File Index " + Chr(13) + Chr(32) + Chr(10) + Chr(26) + Chr(0), 37
  1129.         :LABEL045
  1130.         If (BOOLEAN026) Then
  1131.             FSeek 1, 0, 2
  1132.             Goto LABEL046
  1133.         Endif
  1134.         FSeek 1, 0, 0
  1135.         FWrite 1, " EDSBack v1.21 Binary Trash File" + Chr(13) + Chr(32) + Chr(10) + Chr(26) + Chr(0), 37
  1136.         :LABEL046
  1137.         FWrite 1, 0, 1
  1138.         Inc INTEGER006
  1139.         If (BOOLEAN017 && BOOLEAN012) Then
  1140.             FWrite 1, 1, 1
  1141.             FWrite 1, STRING017, 3
  1142.             FWrite 1, STRING006, 4
  1143.             FWrite 1, STRING007, 8
  1144.             STRING008 = Upper(U_Name() + Space(25 - Len(U_Name())))
  1145.             FWrite 1, STRING008, 25
  1146.             FWrite 1, Date(), 2
  1147.             FWrite 1, Time(), 4
  1148.             INTEGER003 = S2I(STRING017, 10) + S2I(STRING006, 10) + S2I(STRING007, 10)
  1149.             Goto LABEL047
  1150.         Endif
  1151.         FWrite 1, 0, 1
  1152.         FWrite 1, STRING010, 3
  1153.         FWrite 1, STRING011, 4
  1154.         FWrite 1, STRING020, 8
  1155.         STRING008 = Upper(U_Name())
  1156.         STRING008 = STRING008 + Space(25 - Len(U_Name()))
  1157.         FWrite 1, STRING008, 25
  1158.         FWrite 1, Date(), 2
  1159.         FWrite 1, Time(), 4
  1160.         INTEGER003 = S2I(STRING010, 10) + S2I(STRING011, 10) + S2I(STRING020, 10)
  1161.         :LABEL047
  1162.         FWrite 2, INTEGER006, 4
  1163.         FWrite 2, INTEGER003, 4
  1164.         FWrite 1, Space(11), 11
  1165.         FClose 1
  1166.         FClose 2
  1167.         WORD004 = 7
  1168.         Gosub LABEL114
  1169.         If (BOOLEAN027) DispStr STRING029
  1170.         If (BYTE001 <> 0) U_Sec = BYTE001
  1171.         If (DATE002 <> 0) U_ExpDate = DATE002
  1172.         If (BYTE002 <> 0) U_ExpSec = BYTE002
  1173.         If (BOOLEAN007) Then
  1174.             If (BOOLEAN017 && BOOLEAN012) Then
  1175.                 U_BDPhone = STRING017 + STRING006 + STRING007
  1176.                 Goto LABEL048
  1177.             Endif
  1178.             U_BDPhone = STRING010 + "-" + STRING011 + "-" + STRING020
  1179.         Endif
  1180.         :LABEL048
  1181.         If ((BYTE011 == 1) || (BYTE011 == 3)) Then
  1182.             If (TBYTE018(0) == 1) Then
  1183.                 U_Cmnt1 = String(Date()) + " " + String(Time()) + " EDSBack v1.21b    "
  1184.                 Goto LABEL049
  1185.             Endif
  1186.             If (TBYTE018(0) == 2) Then
  1187.                 U_Cmnt2 = String(Date()) + " " + String(Time()) + " EDSBack v1.21b    "
  1188.                 Goto LABEL049
  1189.             Endif
  1190.             If (TBYTE018(0) == 10) Then
  1191.                 If (Psa(6)) U_Notes(0) = String(Date()) + " " + String(Time()) + " EDSBack v1.21b    "
  1192.                 Goto LABEL049
  1193.             Endif
  1194.             If (TBYTE018(0) == 20) Then
  1195.                 If (Psa(6)) U_Notes(1) = String(Date()) + " " + String(Time()) + " EDSBack v1.21b    "
  1196.                 Goto LABEL049
  1197.             Endif
  1198.             If (TBYTE018(0) == 30) Then
  1199.                 If (Psa(6)) U_Notes(2) = String(Date()) + " " + String(Time()) + " EDSBack v1.21b    "
  1200.                 Goto LABEL049
  1201.             Endif
  1202.             If (TBYTE018(0) == 40) Then
  1203.                 If (Psa(6)) U_Notes(3) = String(Date()) + " " + String(Time()) + " EDSBack v1.21b    "
  1204.                 Goto LABEL049
  1205.             Endif
  1206.             If (TBYTE018(0) == 50) Then
  1207.                 If (Psa(6)) U_Notes(4) = String(Date()) + " " + String(Time()) + " EDSBack v1.21b    "
  1208.             Endif
  1209.         Endif
  1210.         :LABEL049
  1211.         If ((BYTE011 == 2) || (BYTE011 == 3)) Then
  1212.             If (BOOLEAN017 && BOOLEAN012) Then
  1213.                 STRING008 = STRING017 + "-" + STRING006 + "-" + STRING007 + "  EDSBack v1.21b    "
  1214.                 Goto LABEL050
  1215.             Endif
  1216.             STRING008 = "(" + STRING010 + ")" + " " + STRING011 + "-" + STRING020 + "  EDSBack v1.21b    "
  1217.             :LABEL050
  1218.             If (TBYTE018(1) == 1) Then
  1219.                 U_Cmnt1 = STRING008
  1220.                 Goto LABEL051
  1221.             Endif
  1222.             If (TBYTE018(1) == 2) Then
  1223.                 U_Cmnt2 = STRING008
  1224.                 Goto LABEL051
  1225.             Endif
  1226.             If (TBYTE018(1) == 10) Then
  1227.                 If (Psa(6)) U_Notes(0) = STRING008
  1228.                 Goto LABEL051
  1229.             Endif
  1230.             If (TBYTE018(1) == 20) Then
  1231.                 If (Psa(6)) U_Notes(1) = STRING008
  1232.                 Goto LABEL051
  1233.             Endif
  1234.             If (TBYTE018(1) == 30) Then
  1235.                 If (Psa(6)) U_Notes(2) = STRING008
  1236.                 Goto LABEL051
  1237.             Endif
  1238.             If (TBYTE018(1) == 40) Then
  1239.                 If (Psa(6)) U_Notes(3) = STRING008
  1240.                 Goto LABEL051
  1241.             Endif
  1242.             If (TBYTE018(1) == 50) Then
  1243.                 If (Psa(6)) U_Notes(4) = STRING008
  1244.             Endif
  1245.         Endif
  1246.         :LABEL051
  1247.         PutUser
  1248.         If (BYTE009 == 1) Then
  1249.             FCreate 1, TempPath() + "EDS" + String(PcbNode()) + ".WRK", 1, 3
  1250.             FPutLn 1, "    @X0B" + U_Name() + " @X07 was verified on @X0C" + String(Date()) + " @X07at@X0C " + String(Time())
  1251.             FPutLn 1, "@X07You may wish to give this user a personal greeting...  His/Her new"
  1252.             If (BYTE001 <> 0) Then
  1253.                 STRING008 = String(BYTE001)
  1254.                 Goto LABEL052
  1255.             Endif
  1256.             STRING008 = "N/A"
  1257.             :LABEL052
  1258.             FPutLn 1, "security level is @X09" + STRING008 + "@X07."
  1259.             FPutLn 1
  1260.             FPutLn 1, "Also, here are the user's address & phone numbers:"
  1261.             FPutLn 1
  1262.             If (Psa(3)) Goto LABEL053
  1263.             FPutLn 1, "@X09Address PSA not installed..."
  1264.             FPutLn 1
  1265.             Goto LABEL054
  1266.             :LABEL053
  1267.             FPutLn 1, "@X07Address Line 1: @X09" + U_Addr(0)
  1268.             FPutLn 1, "@X07Address Line 2: @X09" + U_Addr(1)
  1269.             FPutLn 1, "@X07City: @X09" + U_Addr(2) + "  @X07State: @X09" + U_Addr(3) + "  @X07Zip: @X09" + U_Addr(4)
  1270.             FPutLn 1, "@X07Country: @X09" + U_Addr(5)
  1271.             FPutLn 1
  1272.             :LABEL054
  1273.             FPutLn 1, "@X07VOICE phone: @X0E" + U_HVPhone
  1274.             FPutLn 1, "@X07DATA phone : @X0E" + U_BDPhone
  1275.             FPutLn 1
  1276.             FPutLn 1, "@X0CThank you for using EDSBack v1.21b!"
  1277.             FPutLn 1
  1278.             FPutLn 1, "@X0A---"
  1279.             FPut 1, " # EDSBack v1.21b " + String(FileInf(PPEPath() + PPEName() + ".PPE", 2))
  1280.             FPutLn 1, " " + String(FileInf(PPEPath() + PPEName() + ".PPE", 3))
  1281.             FPutLn 1, " # @BOARDNAME@"
  1282.             FClose 1
  1283.             Message 0, "SYSOP", "EDSBACK v1.21b", "USER VERIFIED SUCCESSFULLY", "R", Date() + 5, 0, 0, TempPath() + "EDS" + String(PcbNode()) + ".WRK"
  1284.             Delete TempPath() + "EDS" + String(PcbNode()) + ".WRK"
  1285.             Goto LABEL055
  1286.         Endif
  1287.         If (BYTE009 == 2) Then
  1288.             If ((TSTRING027(4) <> "") && (TSTRING027(4) <> "NONE")) Message 0, "SYSOP", "EDSBACK v1.21b", "USER VERIFIED SUCCESSFULLY", "R", Date() + 5, 0, 0, TSTRING027(4)
  1289.         Endif
  1290.         :LABEL055
  1291.         If (BYTE010 == 1) Then
  1292.             FCreate 1, TempPath() + "EDSU" + String(PcbNode()) + ".WRK", 1, 3
  1293.             FPutLn 1, "     Thanks for calling @FIRST@!"
  1294.             FPutLn 1, "We hope you find your stay here enjoyable and we hope you call back"
  1295.             FPutLn 1, "frequently!  Your first time on here was on @X0B@LOGDATE@ @X07at@X0B @LOGTIME@@X07."
  1296.             FPutLn 1
  1297.             FPutLn 1, "@X0A---"
  1298.             FPut 1, " # EDSBack v1.21b " + String(FileInf(PPEPath() + PPEName() + ".PPE", 2))
  1299.             FPutLn 1, " " + String(FileInf(PPEPath() + PPEName() + ".PPE", 3))
  1300.             FPutLn 1, " # @BOARDNAME@"
  1301.             FClose 1
  1302.             Message 0, U_Name(), "SYSOP", "WELCOME NEW USER", "R", Date() + 5, 0, 0, TempPath() + "EDSU" + String(PcbNode()) + ".WRK"
  1303.             Delete TempPath() + "EDSU" + String(PcbNode()) + ".WRK"
  1304.             Goto LABEL056
  1305.         Endif
  1306.         If (BYTE010 == 2) Then
  1307.             If ((TSTRING027(5) <> "") && (TSTRING027(5) <> "NONE")) Message 0, U_Name() , "SYSOP", "WELCOME NEW USER", "R", Date() + 5, 0, 0, TSTRING027(5)
  1308.         Endif
  1309.         :LABEL056
  1310.         If (EvtTimeAdj()) Goto LABEL058
  1311.         If (BOOLEAN016) Then
  1312.             AdjTime INTEGER005
  1313.             Goto LABEL057
  1314.         Endif
  1315.         AdjTime INTEGER005 - MinLeft()
  1316.         :LABEL057
  1317.         Goto LABEL059
  1318.         :LABEL058
  1319.         WORD004 = 40
  1320.         Gosub LABEL114
  1321.         If (BOOLEAN027) Log STRING029, 0
  1322.         WORD004 = 34
  1323.         Gosub LABEL114
  1324.         If (BOOLEAN027) DispStr STRING029
  1325.         :LABEL059
  1326.         AdjDBytes INTEGER015
  1327.         AdjTBytes INTEGER016
  1328.         AdjTFiles WORD009
  1329.         WORD004 = 29
  1330.         Gosub LABEL114
  1331.         If (BOOLEAN027) DispStr STRING029
  1332.         If (BOOLEAN013) Then
  1333.             WORD004 = 42
  1334.             Gosub LABEL114
  1335.             If (BOOLEAN027) Log STRING029 + " " + String(Time()) , 0
  1336.             WORD004 = 30
  1337.             Gosub LABEL114
  1338.             If (BOOLEAN027) DispStr STRING029
  1339.             Delay 15
  1340.             Gosub LABEL119
  1341.             Bye
  1342.             Goto LABEL060
  1343.         Endif
  1344.         If ((TSTRING027(10) <> "") && (TSTRING027(10) <> "NONE")) Then
  1345.             OpText FileInf(TSTRING027(10), 8)
  1346.             WORD004 = 33
  1347.             Gosub LABEL114
  1348.             If (BOOLEAN027) DispStr STRING029
  1349.             Newlines 2
  1350.             Flag TSTRING027(10)
  1351.             WORD004 = 41
  1352.             Gosub LABEL114
  1353.             If (BOOLEAN027) Log STRING029 + " " + FileInf(TSTRING027(10), 8) , 0
  1354.             Delay 15
  1355.             If (BOOLEAN029) Download ""
  1356.         Endif
  1357.         WORD004 = 31
  1358.         Gosub LABEL114
  1359.         If (BOOLEAN027) DispStr STRING029
  1360.         Delay 5
  1361.     Endif
  1362.     :LABEL060
  1363.     Return
  1364.     :LABEL061
  1365.     KeyFlush
  1366.     Color 7
  1367.     Cls
  1368.     PrintLn "@X0F                    @X10┌──────────────────────────────────────@X19┐@X07"
  1369.     PrintLn "@X0F                    @X10│            @X1AEDSBack v1.21b            @X19│@X07"
  1370.     PrintLn "@X0F                    @X10│ @X1FCopyright (@X1Bc@X1F) 1994 by GO/4 Software  @X19│@X07"
  1371.     PrintLn "@X0F                    @X10└@X19──────────────────────────────────────┘@X07"
  1372.     PrintLn 
  1373.     Print "@X0C@BOARDNAME:80C@"
  1374.     PrintLn 
  1375.     PrintLn "@X0C   @X40┌───────────────────────────────────────────────────────────────────────@X4C┐@X07"
  1376.     Print "@X0F   @X40│ @X4FName : @X4E"
  1377.     If (TBOOLEAN024(0)) Then
  1378.         Print "N/A" + Space(24)
  1379.     Else
  1380.         Print "@REAL:27@"
  1381.     Endif
  1382.     Print "@X4FFrom : @X4E"
  1383.     If (TBOOLEAN024(3)) Then
  1384.         Print "N/A" + Space(26)
  1385.     Else
  1386.         Print "@CITY:29@"
  1387.     Endif
  1388.     PrintLn "@X4C│@X07"
  1389.     PrintLn "@X0F   @X40│@X4B───────────────────────────────────────────────────────────────────────@X4C│@X07"
  1390.     Print "@X0F   @X40│ @X4FCurrent Sec. Level   : @X4E@SECURITY:11@"
  1391.     Print "@X4FUpgraded Security Level    : @X4E"
  1392.     If (BYTE001 <> 0) Then
  1393.         STRING008 = String(BYTE001)
  1394.     Else
  1395.         STRING008 = "N/A"
  1396.     Endif
  1397.     Print Left(STRING008 + Space(7), 7)
  1398.     PrintLn "@X4C│@X07"
  1399.     PrintLn "@X0F   @X40│@X4B───────────────────────────────────────────────────────────────────────@X4C│@X07"
  1400.     Print "@X0F   @X40│ @X4FNew Expiration Date  : @X4E"
  1401.     Print Left(String(DATE002) + Space(11), 11)
  1402.     Print "@X4FNew Expired Security Level : @X4E"
  1403.     If (BYTE002 <> 0) Then
  1404.         STRING008 = String(BYTE002)
  1405.     Else
  1406.         STRING008 = "N/A"
  1407.     Endif
  1408.     Print Left(STRING008 + Space(7), 7)
  1409.     PrintLn "@X4C│@X07"
  1410.     PrintLn "@X0F   @X40│@X4B───────────────────────────────────────────────────────────────────────@X4C│@X07"
  1411.     Print "@X0F   @X40│ @X4FNumber Connect Tries : @X4E"
  1412.     Print Left(String(BYTE004) + Space(8), 8)
  1413.     Print "@X4F   Hangup After Verification  : @X4E"
  1414.     If (BOOLEAN013) Then
  1415.         Print "Yes    "
  1416.     Else
  1417.         Print "No     "
  1418.     Endif
  1419.     PrintLn "@X4C│@X07"
  1420.     PrintLn "@X0F   @X40│@X4B───────────────────────────────────────────────────────────────────────@X4C│@X07"
  1421.     PrintLn "@X0F   @X40└@X4C───────────────────────────────────────────────────────────────────────┘@X07"
  1422.     PrintLn 
  1423.     Return
  1424.     :LABEL062
  1425.     Delay 18
  1426.     INTEGER006 = 0
  1427.     STRING008 = ""
  1428.     BOOLEAN019 = 0
  1429.     If (TBOOLEAN024(0)) Then
  1430.         STRING009 = YesChar()
  1431.         WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Verifying name...", ""
  1432.         While (!BOOLEAN019 && (INTEGER006 < BYTE005)) Do
  1433.             If (STRING009 == YesChar()) Inc INTEGER006
  1434.             WORD004 = 11
  1435.             Gosub LABEL114
  1436.             KeyFlush
  1437.             InputText STRING029 + STRING012, STRING008, 0, 25
  1438.             STRING008 = Upper(Trim(STRING008, " "))
  1439.             If (TBOOLEAN024(4) && (STRING008 <> "")) Then
  1440.                 If (U_Name() == STRING008) Then
  1441.                     STRING009 = YesChar()
  1442.                     PrintLn 
  1443.                     PrintLn "@X07" + U_Name()
  1444.                     PrintLn U_City
  1445.                     PrintLn 
  1446.                     KeyFlush
  1447.                     PromptStr 598, STRING009, 1, " ", 2 + 4 + 16384
  1448.                     If (Upper(STRING009) <> YesChar()) Then
  1449.                         PrintLn 
  1450.                         Continue
  1451.                     Endif
  1452.                     Goto LABEL063
  1453.                 Endif
  1454.                 If (U_Alias == STRING008) Then
  1455.                     STRING009 = YesChar()
  1456.                     PrintLn 
  1457.                     PrintLn "@X07" + U_Alias
  1458.                     PrintLn U_City
  1459.                     PrintLn 
  1460.                     KeyFlush
  1461.                     PromptStr 598, STRING009, 1, " ", 2 + 4 + 16384
  1462.                     If (Upper(STRING009) <> YesChar()) Then
  1463.                         PrintLn 
  1464.                         Continue
  1465.                     Endif
  1466.                 Endif
  1467.             Endif
  1468.             :LABEL063
  1469.             If ((U_Name() == STRING008) && (STRING008 <> "")) Then
  1470.                 PrintLn 
  1471.                 BOOLEAN019 = 1
  1472.                 Continue
  1473.             Endif
  1474.             If ((U_Alias == STRING008) && (STRING008 <> "")) Then
  1475.                 PrintLn 
  1476.                 BOOLEAN019 = 1
  1477.                 Continue
  1478.             Endif
  1479.             OpText String(BYTE005 - INTEGER006)
  1480.             WORD004 = 12
  1481.             Gosub LABEL114
  1482.             If (BOOLEAN027) DispStr STRING029
  1483.             PrintLn 
  1484.             BOOLEAN019 = 0
  1485.         EndWhile
  1486.         If (BOOLEAN019) Goto LABEL064
  1487.         WORD004 = 44
  1488.         Gosub LABEL114
  1489.         If (BOOLEAN027) Log STRING029, 0
  1490.         WORD004 = 13
  1491.         Gosub LABEL114
  1492.         If (BOOLEAN027) DispStr STRING029
  1493.         Gosub LABEL119
  1494.         Bye
  1495.     Endif
  1496.     :LABEL064
  1497.     BOOLEAN019 = 0
  1498.     INTEGER006 = 0
  1499.     If (TBOOLEAN024(1)) Then
  1500.         WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Verifying password...", ""
  1501.         While (!BOOLEAN019 && (INTEGER006 < BYTE006)) Do
  1502.             Inc INTEGER006
  1503.             STRING008 = ""
  1504.             KeyFlush
  1505.             PromptStr 148, STRING008, 12, Mask_Pwd(), 1 + 2 + 4 + 256 + 4096
  1506.             If (Upper(U_Pwd) == Upper(STRING008)) Then
  1507.                 PrintLn 
  1508.                 BOOLEAN019 = 1
  1509.                 Continue
  1510.             Endif
  1511.             OpText String(BYTE006 - INTEGER006)
  1512.             WORD004 = 14
  1513.             Gosub LABEL114
  1514.             If (BOOLEAN027) DispStr STRING029
  1515.             PrintLn 
  1516.             BOOLEAN019 = 0
  1517.         EndWhile
  1518.         If (BOOLEAN019) Goto LABEL065
  1519.         WORD004 = 45
  1520.         Gosub LABEL114
  1521.         If (BOOLEAN027) Log STRING029, 0
  1522.         WORD004 = 13
  1523.         Gosub LABEL114
  1524.         If (BOOLEAN027) DispStr STRING029
  1525.         Gosub LABEL119
  1526.         Bye
  1527.     Endif
  1528.     :LABEL065
  1529.     BOOLEAN019 = 0
  1530.     INTEGER006 = 0
  1531.     If (TBOOLEAN024(2) && Psa(2)) Then
  1532.         WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Verifying verification string...", ""
  1533.         While (!BOOLEAN019 && (INTEGER006 < BYTE013)) Do
  1534.             Inc INTEGER006
  1535.             STRING008 = ""
  1536.             KeyFlush
  1537.             PromptStr 707, STRING008, 25, Mask_Ascii(), 2 + 4 + 4096
  1538.             If (Upper(U_Ver) == Upper(STRING008)) Then
  1539.                 PrintLn 
  1540.                 BOOLEAN019 = 1
  1541.                 Continue
  1542.             Endif
  1543.             OpText String(BYTE013 - INTEGER006)
  1544.             WORD004 = 52
  1545.             Gosub LABEL114
  1546.             If (BOOLEAN027) DispStr STRING029
  1547.             PrintLn 
  1548.             BOOLEAN019 = 0
  1549.         EndWhile
  1550.         If (BOOLEAN019) Goto LABEL066
  1551.         WORD004 = 24
  1552.         Gosub LABEL114
  1553.         If (BOOLEAN027) Log STRING029, 0
  1554.         WORD004 = 13
  1555.         Gosub LABEL114
  1556.         If (BOOLEAN027) DispStr STRING029
  1557.         Gosub LABEL119
  1558.         Bye
  1559.     Endif
  1560.     :LABEL066
  1561.     BOOLEAN019 = 0
  1562.     INTEGER006 = 0
  1563.     If (TBOOLEAN024(3)) Then
  1564.         WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Verifying city...", ""
  1565.         While (!BOOLEAN019 && (INTEGER006 < BYTE015)) Do
  1566.             Inc INTEGER006
  1567.             STRING008 = ""
  1568.             KeyFlush
  1569.             PromptStr 265, STRING008, 24, Mask_Ascii(), 2 + 4 + 4096
  1570.             If (Upper(U_City) == Upper(STRING008)) Then
  1571.                 PrintLn 
  1572.                 BOOLEAN019 = 1
  1573.                 Continue
  1574.             Endif
  1575.             OpText String(BYTE015 - INTEGER006)
  1576.             WORD004 = 53
  1577.             Gosub LABEL114
  1578.             If (BOOLEAN027) DispStr STRING029
  1579.             PrintLn 
  1580.             BOOLEAN019 = 0
  1581.         EndWhile
  1582.         If (BOOLEAN019) Goto LABEL067
  1583.         WORD004 = 51
  1584.         Gosub LABEL114
  1585.         If (BOOLEAN027) Log STRING029, 0
  1586.         WORD004 = 13
  1587.         Gosub LABEL114
  1588.         If (BOOLEAN027) DispStr STRING029
  1589.         Gosub LABEL119
  1590.         Bye
  1591.     Endif
  1592.     :LABEL067
  1593.     BOOLEAN019 = 1
  1594.     Return
  1595.     :LABEL068
  1596.     If (Exist(PPEPath() + "EDSBACK.XXX")) Goto LABEL069
  1597.     PrintLn 
  1598.     PrintLn "@X0CEDSBACK FATAL ERROR: @X0FEDSBACK.XXX DOES NOT EXIST!"
  1599.     Log "EDSBack Fatal Error: EDSBACK.XXX does not exist!", 0
  1600.     PrintLn 
  1601.     Wait
  1602.     Goto LABEL118
  1603.     :LABEL069
  1604.     FOpen 1, PPEPath() + "EDSBACK.XXX", 0, 0
  1605.     If (Ferr(1)) Then
  1606.         BOOLEAN019 = 1
  1607.     Else
  1608.         BOOLEAN019 = 0
  1609.     Endif
  1610.     If (BOOLEAN019) Then
  1611.         OpText "EDSBACK.XXX"
  1612.         WORD004 = 9
  1613.         Gosub LABEL114
  1614.         If (BOOLEAN027) DispStr STRING029
  1615.         WORD004 = 8
  1616.         Gosub LABEL114
  1617.         If (BOOLEAN027) Log STRING029 + " EDSBACK.XXX", 0
  1618.         WORD004 = 27
  1619.         Gosub LABEL114
  1620.         If (BOOLEAN027) Log STRING029, 0
  1621.         FClose 1
  1622.         Goto LABEL118
  1623.     Endif
  1624.     WORD006 = 0
  1625.     FDefIn 1
  1626.     FSeek 1, 43, 0
  1627.     FDRead STRING006, 3
  1628.     FDRead BOOLEAN012, 1
  1629.     FDRead STRING013, 25
  1630.     FDRead INTEGER004, 4
  1631.     FDRead STRING016, 30
  1632.     FDRead STRING014, 30
  1633.     FDRead STRING015, 30
  1634.     FDRead BYTE003, 1
  1635.     FDRead WORD002, 2
  1636.     FDRead BOOLEAN016, 1
  1637.     FDRead INTEGER005, 4
  1638.     FDRead STRING023, 75
  1639.     FDRead WORD003, 2
  1640.     FDRead STRING024, 30
  1641.     FDRead BYTE007, 1
  1642.     FDRead TBYTE018(0), 1
  1643.     FDRead TBYTE018(1), 1
  1644.     For INTEGER006 = 0 To 11
  1645.         FDRead TSTRING027(INTEGER006), 75
  1646.     Next
  1647.     FDRead BYTE005, 1
  1648.     FDRead BYTE006, 1
  1649.     FDRead BYTE013, 1
  1650.     FDRead BYTE015, 1
  1651.     FDRead BYTE009, 1
  1652.     FDRead BYTE010, 1
  1653.     FDRead INTEGER008, 4
  1654.     FDRead INTEGER009, 4
  1655.     FDRead BYTE011, 1
  1656.     For INTEGER006 = 0 To 4
  1657.         FDRead TBOOLEAN024(INTEGER006), 1
  1658.     Next
  1659.     FDRead BYTE012, 1
  1660.     For INTEGER006 = 0 To 3
  1661.         FDRead TBOOLEAN025(INTEGER006), 1
  1662.     Next
  1663.     FDRead WORD005, 2
  1664.     FDRead BYTE020, 1
  1665.     FDRead BOOLEAN004, 1
  1666.     FDRead BOOLEAN005, 1
  1667.     FDRead BOOLEAN006, 1
  1668.     FDRead WORD008, 2
  1669.     FDRead BYTE014, 1
  1670.     FDRead BOOLEAN007, 1
  1671.     FDRead INTEGER015, 4
  1672.     FDRead INTEGER016, 4
  1673.     FDRead WORD009, 2
  1674.     FDRead BOOLEAN029, 1
  1675.     FDRead BOOLEAN023, 1
  1676.     FDRead BYTE008, 1
  1677.     FDRead WORD006, 2
  1678.     FClose 1
  1679.     If (WORD006 <> 0) Then
  1680.         DATE009 = Date() + WORD006
  1681.         WORD006 = 0
  1682.     Else
  1683.         DATE009 = 0
  1684.         WORD006 = 0
  1685.     Endif
  1686.     Return
  1687.     :LABEL070
  1688.     If (Exist(PPEPath() + "EDSSTATS.DAT")) Then
  1689.         FOpen 1, PPEPath() + "EDSSTATS.DAT", 0, 0
  1690.         If (Ferr(1)) Then
  1691.             BOOLEAN019 = 1
  1692.         Else
  1693.             BOOLEAN019 = 0
  1694.         Endif
  1695.         If (BOOLEAN019) Then
  1696.             OpText "EDSSTATS.DAT"
  1697.             WORD004 = 9
  1698.             Gosub LABEL114
  1699.             If (BOOLEAN027) DispStr STRING029
  1700.             WORD004 = 8
  1701.             Gosub LABEL114
  1702.             If (BOOLEAN027) Log STRING029 + " EDSSTATS.DAT", 0
  1703.             WORD004 = 27
  1704.             Gosub LABEL114
  1705.             If (BOOLEAN027) Log STRING029, 0
  1706.             FClose 1
  1707.             Return
  1708.         Endif
  1709.         FSeek 1, 47, 0
  1710.         FRead 1, INTEGER011, 4
  1711.         FClose 1
  1712.     Else
  1713.         INTEGER011 = 0
  1714.     Endif
  1715.     Cls
  1716.     PrintLn " @X10┌────────────────────────────────────────────────────────────────────────────@X19┐@X07"
  1717.     PrintLn " @X10│   @X1F              EDSBack v1.21b Informational Status Display                @X19│@X07"
  1718.     PrintLn " @X10└@X19────────────────────────────────────────────────────────────────────────────┘@X07"
  1719.     PrintLn " @X10┌─────────────────────@X19┐  @X10┌───────────────────────────────────────────────────@X19┐@X07"
  1720.     PrintLn " @X10│ @X1AExecutable Status   @X19│  @X10│           @X1AEDSBack System File Stats               @X19│@X07"
  1721.     PrintLn " @X10│ @X1FName   @X13" + Left(PPEName() + ".PPE" + Space(13), 13) + "@X19│  @X10│@X1EName               Bytes              Records      @X19│@X07"
  1722.     Print " @X10│ @X1FDate   @X13" + String(FileInf(PPEPath() + PPEName() + ".PPE", 2)) + "     @X19│  @X10│@X1FUsed # Trash      @X13 " + Left(String(FileInf(TSTRING027(0), 4)) + Space(19), 19)
  1723.     INTEGER003 = (FileInf(TSTRING027(0), 4) - 37) / 59
  1724.     PrintLn Left(String(INTEGER003) + Space(13), 13) + "@X19│@X07"
  1725.     Print " @X10│ @X1FTime   @X13" + String(FileInf(PPEPath() + PPEName() + ".PPE", 3)) + "     @X19│  @X10│@X1FBad # Trash        @X13" + Left(String(FileInf(TSTRING027(3), 4)) + Space(19), 19)
  1726.     INTEGER003 = (FileInf(TSTRING027(3), 4) - 41) / 19
  1727.     PrintLn Left(String(INTEGER003) + Space(13), 13) + "@X19│@X07"
  1728.     Print " @X10│ @X1FBytes  @X13" + Left(String(FileInf(PPEPath() + PPEName() + ".PPE", 4)) + Space(13), 13) + "@X19│  @X10│@X1FAllowed #s         @X13" + Left(String(FileInf(TSTRING027(1), 4)) + Space(19), 19)
  1729.     INTEGER003 = (FileInf(TSTRING027(1), 4) - 41) / 29
  1730.     PrintLn Left(String(INTEGER003) + Space(13), 13) + "@X19│@X07"
  1731.     Print " @X10└@X19─────────────────────┘  @X10│@X1FDialing Templates  @X13" + Left(String(FileInf(PPEPath() + "EDSDIAL.PLT", 4)) + Space(19), 19)
  1732.     INTEGER003 = (FileInf(PPEPath() + "EDSDIAL.PLT", 4) - 41) / 28
  1733.     PrintLn Left(String(INTEGER003) + Space(13), 13) + "@X19│@X07"
  1734.     PrintLn " @X10┌─────────────────@X19┐      @X10└@X19───────────────────────────────────────────────────┘@X07"
  1735.     PrintLn " @X10│ @X1FUsers Verified  @X19└@X10──────────────────────────────────────@X19┐ @X10┌─────────────────@X19┐@X07"
  1736.     STRING008 = ReadLine(PCBDat(), 29)
  1737.     INTEGER003 = FileInf(STRING008, 4) / 400
  1738.     PrintLn " @X10│ @X1F0%························50%·····················100% @X19│ @X10│@X1FUsers    @X13" + Left(String(INTEGER003) + Space(8), 8) + "@X19│@X07"
  1739.     If ((INTEGER011 <> 0) && (INTEGER003 <> 0)) Then
  1740.         REAL001 = FmtReal((ToReal(INTEGER011) / ToReal(INTEGER003)) * ToReal(54), 1, 0)
  1741.     Else
  1742.         REAL001 = 0
  1743.     Endif
  1744.     Color 7
  1745.     Print " @X10│ @X1C"
  1746.     STRING008 = Space(REAL001)
  1747.     STRING008 = Replace(STRING008, " ", "▓")
  1748.     Print STRING008
  1749.     PrintLn "@X0C" + Space(54 - ToInt(REAL001)) + "@X10 @X19│ @X10│@X1FVerified @X13" + Left(String(INTEGER011) + Space(8), 8) + "@X19│@X07"
  1750.     PrintLn " @X10└@X19────────────────────────────────────────────────────────┘ @X10└@X19─────────────────┘@X07"
  1751.     PrintLn " @X10┌────────────────────────────────────────────────────────────────────────────@X19┐@X07"
  1752.     PrintLn " @X10│                            @X1ARegistration Status                             @X19│@X07"
  1753.     If (BOOLEAN015) Then
  1754.         PrintLn " @X10│ @X1FSysop Name  @X13" + Left(STRING013 + Space(28), 28) + "@X1EPlease thank your SysOp for        @X19│@X07"
  1755.         PrintLn " @X10│ @X1FReg. Code   @X13" + Left(String(INTEGER004) + Space(28), 28) + "@X1Esupporting the shareware concept!  @X19│@X07"
  1756.     Else
  1757.         PrintLn " @X10│ @X1FSysop Name  @X13UNREGISTERED" + Space(16) + "@X1EPlease ask your SysOp how you can  @X19│@X07"
  1758.         PrintLn " @X10│ @X1FReg. Code   @X13    COPY    " + Space(16) + "@X1Ehelp register this product!        @X19│@X07"
  1759.     Endif
  1760.     PrintLn " @X10└@X19────────────────────────────────────────────────────────────────────────────┘@X07"
  1761.     PrintLn 
  1762.     Wait
  1763.     Return
  1764.     :LABEL071
  1765.     BOOLEAN002 = 0
  1766.     :LABEL072
  1767.     If (BOOLEAN002) Goto LABEL074
  1768.     BYTE017 = 0
  1769.     BOOLEAN017 = 0
  1770.     STRING008 = NoChar()
  1771.     If (BOOLEAN012) Then
  1772.         WORD004 = 16
  1773.         Gosub LABEL114
  1774.         InputYN STRING029 + STRING012, STRING008, 0
  1775.     Endif
  1776.     If (BOOLEAN012 && (STRING008 == YesChar())) Then
  1777.         STRING017 = ""
  1778.         STRING006 = ""
  1779.         STRING007 = ""
  1780.         WORD004 = 17
  1781.         While (Strip(STRING017, " ") == "") Do
  1782.             InputStr STRING029 + STRING012, STRING017, 0, 3, "1234567890", 4 + 2 + 256
  1783.             If ((Strip(STRING017, " ") == "") && TBOOLEAN025(1)) Then
  1784.                 BOOLEAN002 = 0
  1785.                 Break
  1786.                 Continue
  1787.             Endif
  1788.             If ((Strip(STRING017, " ") == "") && !TBOOLEAN025(1)) Then
  1789.                 Continue
  1790.             Endif
  1791.         EndWhile
  1792.         WORD004 = 18
  1793.         Gosub LABEL114
  1794.         While (Strip(STRING006, " ") == "") Do
  1795.             InputStr STRING029 + STRING012, STRING006, 0, 4, "1234567890", 4 + 2 + 256
  1796.             If ((Strip(STRING006, " ") == "") && TBOOLEAN025(1)) Then
  1797.                 BOOLEAN002 = 0
  1798.                 Break
  1799.                 Continue
  1800.             Endif
  1801.             If ((Strip(STRING006, " ") == "") && !TBOOLEAN025(1)) Then
  1802.                 Continue
  1803.             Endif
  1804.         EndWhile
  1805.         WORD004 = 19
  1806.         Gosub LABEL114
  1807.         While (Strip(STRING007, " ") == "") Do
  1808.             InputStr STRING029 + STRING012, STRING007, 0, 8, "1234567890", 4 + 2 + 256
  1809.             If ((Strip(STRING007, " ") == "") && TBOOLEAN025(1)) Then
  1810.                 BOOLEAN002 = 0
  1811.                 Break
  1812.                 Continue
  1813.             Endif
  1814.             If ((Strip(STRING007, " ") == "") && !TBOOLEAN025(1)) Then
  1815.                 Continue
  1816.             Endif
  1817.         EndWhile
  1818.         STRING008 = YesChar()
  1819.         If (Len(Strip(STRING017 + STRING006 + STRING007, " ")) >= BYTE014) Then
  1820.             OpText "        " + STRING017 + "-" + STRING006 + "-" + STRING007
  1821.             WORD004 = 20
  1822.             Gosub LABEL114
  1823.             InputYN STRING029 + STRING012, STRING008, 0
  1824.             Select Case (Upper(STRING008))
  1825.                 Case NoChar()
  1826.                     BOOLEAN002 = 0
  1827.                 Case YesChar()
  1828.                     BOOLEAN002 = 1
  1829.                     BYTE017 = 3
  1830.                     BOOLEAN017 = 1
  1831.             End Select
  1832.         Else
  1833.             OpText String(BYTE014)
  1834.             WORD004 = 61
  1835.             Gosub LABEL114
  1836.             DispStr STRING029
  1837.             WORD004 = 62
  1838.             Gosub LABEL114
  1839.             Log STRING029, 0
  1840.             BOOLEAN002 = 0
  1841.             PrintLn 
  1842.             Wait
  1843.         Endif
  1844.     Else
  1845.         If ((BOOLEAN012 && (STRING008 == NoChar())) || ((Len(STRING021) <> 10) || (Len(STRING022) <> 10))) Then
  1846.             STRING006 = ""
  1847.             STRING007 = ""
  1848.             Gosub LABEL075
  1849.             If (!BOOLEAN011) Return
  1850.         Else
  1851.             DispFile TSTRING027(6), 2 + 1 + 4
  1852.             STRING008 = "D"
  1853.             WORD004 = 25
  1854.             Gosub LABEL114
  1855.             InputStr STRING029 + STRING012, STRING008, 0, 1, "DdHhEeRr", 2 + 4 + 8192 + 256
  1856.             Select Case (Upper(STRING008))
  1857.                 Case "D"
  1858.                     If (Len(STRING022) >= BYTE014) Then
  1859.                         BOOLEAN002 = 1
  1860.                         BYTE017 = 1
  1861.                     Else
  1862.                         OpText String(BYTE014)
  1863.                         WORD004 = 61
  1864.                         Gosub LABEL114
  1865.                         DispStr STRING029
  1866.                         WORD004 = 62
  1867.                         Gosub LABEL114
  1868.                         Log STRING029, 0
  1869.                         BOOLEAN002 = 0
  1870.                         PrintLn 
  1871.                         Wait
  1872.                     Endif
  1873.                 Case "H"
  1874.                     If (Len(STRING021) >= BYTE014) Then
  1875.                         BOOLEAN002 = 1
  1876.                         BYTE017 = 2
  1877.                     Else
  1878.                         OpText String(BYTE014)
  1879.                         WORD004 = 61
  1880.                         Gosub LABEL114
  1881.                         DispStr STRING029
  1882.                         WORD004 = 62
  1883.                         Gosub LABEL114
  1884.                         Log STRING029, 0
  1885.                         BOOLEAN002 = 0
  1886.                         PrintLn 
  1887.                         Wait
  1888.                     Endif
  1889.                 Case "R"
  1890.                     BOOLEAN002 = 1
  1891.                     BOOLEAN011 = 0
  1892.                     Return
  1893.                 Case "E"
  1894.                     Gosub LABEL075
  1895.                     If (BOOLEAN011) Goto LABEL073
  1896.                     BOOLEAN011 = 1
  1897.                     BOOLEAN002 = 0
  1898.                 Endif
  1899.             Endif
  1900.     End Select
  1901.     :LABEL073
  1902.     Goto LABEL072
  1903.     :LABEL074
  1904.     Return
  1905.     :LABEL075
  1906.     STRING007 = STRING006
  1907.     STRING006 = ""
  1908.     WORD004 = 26
  1909.     Gosub LABEL114
  1910.     While (Strip(STRING006, " ") == "") Do
  1911.         STRING006 = STRING007
  1912.         InputStr STRING029 + STRING012, STRING006, 0, 3, "1234567890", 2 + 4 + 256
  1913.         If ((Strip(STRING006, " ") == "") && TBOOLEAN025(1)) Then
  1914.             BOOLEAN002 = 1
  1915.             BOOLEAN011 = 0
  1916.             Return
  1917.             Continue
  1918.         Endif
  1919.         If ((Strip(STRING006, " ") == "") && !TBOOLEAN025(1)) Then
  1920.             Continue
  1921.         Endif
  1922.     EndWhile
  1923.     STRING007 = ""
  1924.     WORD004 = 19
  1925.     Gosub LABEL114
  1926.     While (Strip(STRING007, " ") == "") Do
  1927.         InputStr STRING029 + STRING012, STRING007, 0, 8, "123456789-0 ", 2 + 4 + 256
  1928.         If ((Strip(STRING007, " ") == "") && TBOOLEAN025(1)) Then
  1929.             BOOLEAN002 = 1
  1930.             BOOLEAN011 = 0
  1931.             Return
  1932.             Continue
  1933.         Endif
  1934.         If ((Strip(STRING007, " ") == "") && !TBOOLEAN025(1)) Then
  1935.             Continue
  1936.         Endif
  1937.     EndWhile
  1938.     If (Len(Strip(Strip(STRING006 + STRING007, " "), "-")) >= BYTE014) Then
  1939.         STRING008 = YesChar()
  1940.         OpText "        (" + STRING006 + ")" + " " + STRING007
  1941.         WORD004 = 20
  1942.         Gosub LABEL114
  1943.         InputYN STRING029 + STRING012, STRING008, 0
  1944.         PrintLn 
  1945.         Select Case (Upper(STRING008))
  1946.             Case NoChar()
  1947.                 BOOLEAN002 = 0
  1948.             Case YesChar()
  1949.                 BOOLEAN002 = 1
  1950.                 BYTE017 = 3
  1951.                 STRING007 = Strip(Strip(Strip(Strip(STRING007, " "), "-"), "("), ")")
  1952.         End Select
  1953.     Else
  1954.         OpText String(BYTE014)
  1955.         WORD004 = 61
  1956.         Gosub LABEL114
  1957.         DispStr STRING029
  1958.         WORD004 = 62
  1959.         Gosub LABEL114
  1960.         Log STRING029, 0
  1961.         BOOLEAN002 = 0
  1962.         PrintLn 
  1963.         Wait
  1964.     Endif
  1965.     Return
  1966.     :LABEL076
  1967.     If (BOOLEAN017 == 0) Then
  1968.         Select Case (BYTE017)
  1969.             Case 1
  1970.                 STRING010 = Mid(STRING022, 1, 3)
  1971.                 STRING011 = Mid(STRING022, 4, 3)
  1972.                 STRING020 = Mid(STRING022, 7, 4)
  1973.             Case 2
  1974.                 STRING010 = Mid(STRING021, 1, 3)
  1975.                 STRING011 = Mid(STRING021, 4, 3)
  1976.                 STRING020 = Mid(STRING021, 7, 4)
  1977.             Case 3
  1978.                 STRING010 = STRING006
  1979.                 STRING011 = Mid(STRING007, 1, 3)
  1980.                 STRING020 = Mid(STRING007, 4, 4)
  1981.         End Select
  1982.     Else
  1983.         STRING017 = Strip(STRING017, " ")
  1984.         STRING006 = Strip(STRING006, " ")
  1985.         STRING007 = Strip(STRING007, " ")
  1986.     Endif
  1987.     Return
  1988.     :LABEL077
  1989.     BOOLEAN014 = 0
  1990.     If (Exist(TSTRING027(3))) Then
  1991.         INTEGER003 = FileInf(TSTRING027(3), 4)
  1992.         INTEGER006 = (INTEGER003 - 41) / 19
  1993.         INTEGER013 = INTEGER006
  1994.         INTEGER012 = 1
  1995.         INTEGER010 = 1
  1996.         FOpen 1, TSTRING027(3), 0, 0
  1997.         If (Ferr(1)) Then
  1998.             BOOLEAN019 = 1
  1999.             Goto LABEL078
  2000.         Endif
  2001.         BOOLEAN019 = 0
  2002.         :LABEL078
  2003.         If (BOOLEAN019) Then
  2004.             OpText TSTRING027(3)
  2005.             WORD004 = 9
  2006.             Gosub LABEL114
  2007.             If (BOOLEAN027) DispStr STRING029
  2008.             WORD004 = 8
  2009.             Gosub LABEL114
  2010.             If (BOOLEAN027) Log STRING029 + TSTRING027(3) , 0
  2011.             WORD004 = 27
  2012.             Gosub LABEL114
  2013.             If (BOOLEAN027) Log STRING029, 0
  2014.             FClose 1
  2015.             Goto LABEL118
  2016.         Endif
  2017.         FDefIn 1
  2018.         While (INTEGER010 <= INTEGER006) Do
  2019.             STRING030 = ""
  2020.             FSeek 1, 41 + INTEGER010 * 19 - 19, 0
  2021.             FDRead BOOLEAN003, 1
  2022.             If (BOOLEAN003) Goto LABEL079
  2023.             FDRead BOOLEAN026, 1
  2024.             FRead 1, WORD007, 2
  2025.             If ((PcbNode() == WORD007) || (WORD007 == 0)) Then
  2026.                 If (BOOLEAN017 && BOOLEAN012) Then
  2027.                     If (BOOLEAN026) Then
  2028.                         FDRead STRING008, 3
  2029.                         STRING008 = Upper(Strip(STRING008, " "))
  2030.                         For BYTE016 = 1 To Len(STRING017)
  2031.                             If (Mid(STRING008, BYTE016, 1) == "X") Then
  2032.                                 STRING030 = STRING030 + Mid(STRING017, BYTE016, 1)
  2033.                                 Continue
  2034.                             Endif
  2035.                             STRING030 = STRING030 + Mid(STRING008, BYTE016, 1)
  2036.                         Next
  2037.                         FDRead STRING008, 4
  2038.                         For BYTE016 = 1 To Len(STRING006)
  2039.                             If (Mid(STRING008, BYTE016, 1) == "X") Then
  2040.                                 STRING030 = STRING030 + Mid(STRING006, BYTE016, 1)
  2041.                                 Continue
  2042.                             Endif
  2043.                             STRING030 = STRING030 + Mid(STRING008, BYTE016, 1)
  2044.                         Next
  2045.                         FDRead STRING008, 8
  2046.                         STRING008 = Upper(Strip(STRING008, " "))
  2047.                         For BYTE016 = 1 To Len(STRING007)
  2048.                             If (Mid(STRING008, BYTE016, 1) == "X") Then
  2049.                                 STRING030 = STRING030 + Mid(STRING007, BYTE016, 1)
  2050.                                 Continue
  2051.                             Endif
  2052.                             STRING030 = STRING030 + Mid(STRING008, BYTE016, 1)
  2053.                         Next
  2054.                         If (STRING017 + STRING006 + STRING007 == STRING030) Then
  2055.                             BOOLEAN014 = 1
  2056.                             FClose 1
  2057.                             Return
  2058.                         Endif
  2059.                     Endif
  2060.                     Goto LABEL079
  2061.                 Endif
  2062.                 If (BOOLEAN026) Goto LABEL079
  2063.                 FDRead STRING008, 3
  2064.                 STRING008 = Upper(Strip(STRING008, " "))
  2065.                 For BYTE016 = 1 To Len(STRING010)
  2066.                     If (Mid(STRING008, BYTE016, 1) == "X") Then
  2067.                         STRING030 = STRING030 + Mid(STRING010, BYTE016, 1)
  2068.                         Continue
  2069.                     Endif
  2070.                     STRING030 = STRING030 + Mid(STRING008, BYTE016, 1)
  2071.                 Next
  2072.                 FDRead STRING008, 3
  2073.                 STRING008 = Upper(Strip(STRING008, " "))
  2074.                 For BYTE016 = 1 To Len(STRING011)
  2075.                     If (Mid(STRING008, BYTE016, 1) == "X") Then
  2076.                         STRING030 = STRING030 + Mid(STRING011, BYTE016, 1)
  2077.                         Continue
  2078.                     Endif
  2079.                     STRING030 = STRING030 + Mid(STRING008, BYTE016, 1)
  2080.                 Next
  2081.                 FSeek 1, 1, 1
  2082.                 FDRead STRING008, 4
  2083.                 STRING008 = Upper(Strip(STRING008, " "))
  2084.                 For BYTE016 = 1 To Len(STRING020)
  2085.                     If (Mid(STRING008, BYTE016, 1) == "X") Then
  2086.                         STRING030 = STRING030 + Mid(STRING020, BYTE016, 1)
  2087.                         Continue
  2088.                     Endif
  2089.                     STRING030 = STRING030 + Mid(STRING008, BYTE016, 1)
  2090.                 Next
  2091.                 If (STRING010 + STRING011 + STRING020 == STRING030) Then
  2092.                     BOOLEAN014 = 1
  2093.                     FClose 1
  2094.                     Return
  2095.                 Endif
  2096.             Endif
  2097.             :LABEL079
  2098.             Gosub LABEL116
  2099.             Inc INTEGER012
  2100.             Inc INTEGER010
  2101.         EndWhile
  2102.         Color 7
  2103.         FClose 1
  2104.     Endif
  2105.     Return
  2106.     :LABEL080
  2107.     BOOLEAN009 = 1
  2108.     BOOLEAN010 = 1
  2109.     BOOLEAN018 = 0
  2110.     BOOLEAN014 = 1
  2111.     If (Exist(TSTRING027(1)) && Exist(PPEPath() + "EDSALLOW.IDX")) Then
  2112.         If (Exist(PPEPath() + "EDSDIAL.PLT")) Goto LABEL081
  2113.         PrintLn 
  2114.         PrintLn "@X0CEDSBACK FATAL ERROR: NO DIALING TEMPLATE FILE EXISTS!"
  2115.         PrintLn 
  2116.         Log "EDSBACK FATAL ERROR: NO DIALING TEMPLATE FILE!", 0
  2117.         PrintLn "@X0FPlease ask your SysOp to create the dialing template file..."
  2118.         PrintLn 
  2119.         Wait
  2120.         Goto LABEL118
  2121.         :LABEL081
  2122.         WORD004 = 47
  2123.         Gosub LABEL114
  2124.         If (BOOLEAN027) DispStr STRING029 + "    "
  2125.         FOpen 1, TSTRING027(1), 0, 0
  2126.         If (Ferr(1)) Then
  2127.             BOOLEAN019 = 1
  2128.         Else
  2129.             BOOLEAN019 = 0
  2130.         Endif
  2131.         If (BOOLEAN019) Then
  2132.             OpText TSTRING027(1)
  2133.             WORD004 = 9
  2134.             Gosub LABEL114
  2135.             If (BOOLEAN027) DispStr STRING029
  2136.             WORD004 = 8
  2137.             Gosub LABEL114
  2138.             If (BOOLEAN027) Log STRING029 + " " + TSTRING027(1) , 0
  2139.             WORD004 = 27
  2140.             Gosub LABEL114
  2141.             If (BOOLEAN027) Log STRING029, 0
  2142.             FClose 1
  2143.             Goto LABEL118
  2144.         Endif
  2145.         FOpen 2, PPEPath() + "EDSDIAL.PLT", 0, 0
  2146.         If (Ferr(2)) Then
  2147.             BOOLEAN019 = 1
  2148.         Else
  2149.             BOOLEAN019 = 0
  2150.         Endif
  2151.         If (BOOLEAN019) Then
  2152.             OpText PPEPath() + "EDSDIAL.PLT"
  2153.             WORD004 = 9
  2154.             Gosub LABEL114
  2155.             If (BOOLEAN027) DispStr STRING029
  2156.             WORD004 = 8
  2157.             Gosub LABEL114
  2158.             If (BOOLEAN027) Log STRING029 + " " + PPEPath() + "EDSDIAL.PLT", 0
  2159.             WORD004 = 27
  2160.             Gosub LABEL114
  2161.             If (BOOLEAN027) Log STRING029, 0
  2162.             FClose 1
  2163.             FClose 2
  2164.             Goto LABEL118
  2165.         Endif
  2166.         FOpen 3, PPEPath() + "EDSALLOW.IDX", 0, 0
  2167.         If (Ferr(3)) Then
  2168.             BOOLEAN019 = 1
  2169.         Else
  2170.             BOOLEAN019 = 0
  2171.         Endif
  2172.         If (BOOLEAN019) Then
  2173.             OpText PPEPath() + "EDSALLOW.IDX"
  2174.             WORD004 = 9
  2175.             Gosub LABEL114
  2176.             If (BOOLEAN027) DispStr STRING029
  2177.             WORD004 = 8
  2178.             Gosub LABEL114
  2179.             If (BOOLEAN027) Log STRING029 + " " + PPEPath() + "EDSALLOW.IDX", 0
  2180.             WORD004 = 27
  2181.             Gosub LABEL114
  2182.             If (BOOLEAN027) Log STRING029, 0
  2183.             FClose 1
  2184.             FClose 2
  2185.             FClose 3
  2186.             Goto LABEL118
  2187.         Endif
  2188.         FDefIn 3
  2189.         INTEGER014 = FileInf(PPEPath() + "EDSALLOW.IDX", 4)
  2190.         INTEGER013 = (INTEGER014 - 41) / 8
  2191.         If (BOOLEAN017) Then
  2192.             INTEGER003 = S2I(STRING017, 10) + S2I(STRING006, 10)
  2193.         Else
  2194.             INTEGER003 = S2I(STRING010, 10) + S2I(STRING011, 10)
  2195.         Endif
  2196.         INTEGER007 = 0
  2197.         INTEGER012 = 1
  2198.         FSeek 3, 41, 0
  2199.         While (INTEGER012 <= INTEGER013) Do
  2200.             FDRead INTEGER006, 4
  2201.             FDRead INTEGER010, 4
  2202.             If ((INTEGER006 == 0) || (INTEGER006 == INTEGER003)) Then
  2203.                 Inc INTEGER007
  2204.                 FSeek 1, 41 + INTEGER012 * 29 - 29, 0
  2205.                 STRING030 = ""
  2206.                 FRead 1, BOOLEAN003, 1
  2207.                 If (BOOLEAN003) Goto LABEL084
  2208.                 FRead 1, BOOLEAN026, 1
  2209.                 If (BOOLEAN017 && BOOLEAN012) Then
  2210.                     If (BOOLEAN026) Then
  2211.                         FRead 1, STRING008, 3
  2212.                         STRING008 = Upper(Strip(STRING008, " "))
  2213.                         For BYTE016 = 1 To Len(STRING017)
  2214.                             If (Mid(STRING008, BYTE016, 1) == "X") Then
  2215.                                 STRING030 = STRING030 + Mid(STRING017, BYTE016, 1)
  2216.                                 Continue
  2217.                             Endif
  2218.                             STRING030 = STRING030 + Mid(STRING008, BYTE016, 1)
  2219.                         Next
  2220.                         FRead 1, STRING008, 4
  2221.                         STRING008 = Upper(Strip(STRING008, " "))
  2222.                         For BYTE016 = 1 To Len(STRING006)
  2223.                             If (Mid(STRING008, BYTE016, 1) == "X") Then
  2224.                                 STRING030 = STRING030 + Mid(STRING006, BYTE016, 1)
  2225.                                 Continue
  2226.                             Endif
  2227.                             STRING030 = STRING030 + Mid(STRING008, BYTE016, 1)
  2228.                         Next
  2229.                         FRead 1, STRING018, 10
  2230.                         STRING018 = Upper(Trim(STRING018, " "))
  2231.                         If (STRING017 + STRING006 == STRING030) Then
  2232.                             FreshLine
  2233.                             Gosub LABEL098
  2234.                             If (BOOLEAN014) Then
  2235.                                 PrintLn 
  2236.                                 PrintLn "@X0CEDSBACK FATAL ERROR: " + STRING018 + " TEMPLATE NOT FOUND!"
  2237.                                 PrintLn 
  2238.                                 Log STRING018 + " TEMPLATE NOT FOUND! EDSBACK HALTED!", 0
  2239.                                 PrintLn "@X0FPlease ask your SysOp to check his/her dialing templates for accuracy..."
  2240.                                 PrintLn 
  2241.                                 FClose 1
  2242.                                 FClose 2
  2243.                                 FClose 3
  2244.                                 Wait
  2245.                                 Goto LABEL118
  2246.                                 Goto LABEL082
  2247.                             Endif
  2248.                             FClose 1
  2249.                             FClose 2
  2250.                             FClose 3
  2251.                             :LABEL082
  2252.                             Break
  2253.                         Endif
  2254.                     Endif
  2255.                     Goto LABEL084
  2256.                 Endif
  2257.                 If (BOOLEAN026) Goto LABEL084
  2258.                 FRead 1, STRING008, 3
  2259.                 STRING008 = Upper(Strip(STRING008, " "))
  2260.                 For BYTE016 = 1 To Len(STRING010)
  2261.                     If (Mid(STRING008, BYTE016, 1) == "X") Then
  2262.                         STRING030 = STRING030 + Mid(STRING010, BYTE016, 1)
  2263.                         Continue
  2264.                     Endif
  2265.                     STRING030 = STRING030 + Mid(STRING008, BYTE016, 1)
  2266.                 Next
  2267.                 FRead 1, STRING008, 3
  2268.                 STRING008 = Upper(Strip(STRING008, " "))
  2269.                 For BYTE016 = 1 To Len(STRING011)
  2270.                     If (Mid(STRING008, BYTE016, 1) == "X") Then
  2271.                         STRING030 = STRING030 + Mid(STRING011, BYTE016, 1)
  2272.                         Continue
  2273.                     Endif
  2274.                     STRING030 = STRING030 + Mid(STRING008, BYTE016, 1)
  2275.                 Next
  2276.                 FSeek 1, 1, 1
  2277.                 FRead 1, STRING018, 10
  2278.                 STRING018 = Trim(STRING018, " ")
  2279.                 If (STRING010 + STRING011 == STRING030) Then
  2280.                     FreshLine
  2281.                     Gosub LABEL098
  2282.                     If (BOOLEAN014) Then
  2283.                         PrintLn 
  2284.                         PrintLn "@X0CEDSBACK FATAL ERROR: " + STRING018 + " TEMPLATE NOT FOUND!"
  2285.                         PrintLn 
  2286.                         Log STRING018 + " TEMPLATE NOT FOUND! EDSBACK HALTED!", 0
  2287.                         PrintLn "@X0FPlease ask your SysOp to check his/her dialing templates for accuracy..."
  2288.                         PrintLn 
  2289.                         FClose 1
  2290.                         FClose 2
  2291.                         FClose 3
  2292.                         Wait
  2293.                         Goto LABEL118
  2294.                         Goto LABEL083
  2295.                     Endif
  2296.                     FClose 1
  2297.                     FClose 2
  2298.                     FClose 3
  2299.                     :LABEL083
  2300.                     Break
  2301.                 Endif
  2302.             Endif
  2303.             :LABEL084
  2304.             Gosub LABEL116
  2305.             Inc INTEGER012
  2306.         EndWhile
  2307.         Color 7
  2308.         FClose 1
  2309.         FClose 2
  2310.         FClose 3
  2311.         Dec INTEGER012
  2312.         Log "EDSBack Allowed #s (Scanned: " + String(INTEGER012) + "  Searched: " + String(INTEGER007) + ")", 0
  2313.     Else
  2314.         PrintLn 
  2315.         PrintLn 
  2316.         PrintLn "@X0CYour SysOp has not yet created the allowed # calling index file..."
  2317.         PrintLn "@X0ANotifying SysOp of this problem..."
  2318.         PrintLn 
  2319.         PrintLn "@X0FEDSBACK HALTING: INDEX FILE NOT PRESENT"
  2320.         Log "EDSBack Allowed # Index file not present...  PLEASE CREATE!", 1
  2321.         FClose 1
  2322.         FClose 2
  2323.         FClose 3
  2324.         Goto LABEL118
  2325.     Endif
  2326.     If (BOOLEAN014) Then
  2327.         WORD004 = 46
  2328.         Gosub LABEL114
  2329.         If (BOOLEAN027) Log STRING010 + "-" + STRING011 + "-" + STRING020 + " " + STRING029, 0
  2330.     Endif
  2331.     If ((Exist(TSTRING027(0)) && !TBOOLEAN025(2)) && (!BOOLEAN014 && !BOOLEAN008)) Then
  2332.         If (Exist(PPEPath() + "TRASH.IDX")) Then
  2333.             WORD004 = 69
  2334.             Gosub LABEL114
  2335.             If (BOOLEAN027) DispStr STRING029 + "    "
  2336.             INTEGER007 = FileInf(PPEPath() + "TRASH.IDX", 4)
  2337.             INTEGER013 = (INTEGER007 - 37) / 8
  2338.             FOpen 1, TSTRING027(0), 0, 0
  2339.             If (Ferr(1)) Then
  2340.                 BOOLEAN019 = 1
  2341.                 Goto LABEL085
  2342.             Endif
  2343.             BOOLEAN019 = 0
  2344.             :LABEL085
  2345.             If (BOOLEAN019) Then
  2346.                 OpText TSTRING027(0)
  2347.                 WORD004 = 9
  2348.                 Gosub LABEL114
  2349.                 If (BOOLEAN027) DispStr STRING029
  2350.                 WORD004 = 8
  2351.                 Gosub LABEL114
  2352.                 If (BOOLEAN027) Log STRING029 + " " + TSTRING027(0) , 0
  2353.                 WORD004 = 27
  2354.                 Gosub LABEL114
  2355.                 If (BOOLEAN027) Log STRING029, 0
  2356.                 FClose 1
  2357.                 Goto LABEL118
  2358.             Endif
  2359.             FOpen 2, PPEPath() + "TRASH.IDX", 0, 0
  2360.             If (Ferr(2)) Then
  2361.                 BOOLEAN019 = 1
  2362.                 Goto LABEL086
  2363.             Endif
  2364.             BOOLEAN019 = 0
  2365.             :LABEL086
  2366.             If (BOOLEAN019) Then
  2367.                 OpText PPEPath() + "TRASH.IDX"
  2368.                 WORD004 = 9
  2369.                 Gosub LABEL114
  2370.                 If (BOOLEAN027) DispStr STRING029
  2371.                 WORD004 = 8
  2372.                 Gosub LABEL114
  2373.                 If (BOOLEAN027) Log STRING029 + " " + PPEPath() + "TRASH.IDX", 0
  2374.                 WORD004 = 27
  2375.                 Gosub LABEL114
  2376.                 If (BOOLEAN027) Log STRING029, 0
  2377.                 FClose 1
  2378.                 FClose 2
  2379.                 Goto LABEL118
  2380.             Endif
  2381.             FDefIn 2
  2382.             If (BOOLEAN017) Then
  2383.                 INTEGER003 = S2I(STRING017, 10) + S2I(STRING006, 10) + S2I(STRING007, 10)
  2384.                 Goto LABEL087
  2385.             Endif
  2386.             INTEGER003 = S2I(STRING010, 10) + S2I(STRING011, 10) + S2I(STRING020, 10)
  2387.             :LABEL087
  2388.             INTEGER012 = 1
  2389.             FSeek 2, 37, 0
  2390.             INTEGER007 = 0
  2391.             While (INTEGER012 <= INTEGER013) Do
  2392.                 FDRead INTEGER010, 4
  2393.                 FDRead INTEGER006, 4
  2394.                 If (INTEGER006 == INTEGER003) Then
  2395.                     Inc INTEGER007
  2396.                     FSeek 1, 37 + INTEGER010 * 59 - 59, 0
  2397.                     FRead 1, BOOLEAN003, 1
  2398.                     If (BOOLEAN003) Goto LABEL088
  2399.                     FRead 1, BOOLEAN026, 1
  2400.                     FRead 1, STRING022, 3
  2401.                     FRead 1, STRING008, 4
  2402.                     STRING022 = STRING022 + STRING008
  2403.                     FRead 1, STRING008, 8
  2404.                     STRING022 = STRING022 + STRING008
  2405.                     STRING022 = Strip(STRING022, " ")
  2406.                     FRead 1, STRING028, 25
  2407.                     STRING028 = Trim(STRING028, " ")
  2408.                     FRead 1, DATE003, 2
  2409.                     FRead 1, TIME001, 4
  2410.                     If (BOOLEAN017 == 0) Then
  2411.                         If (STRING022 == STRING010 + STRING011 + STRING020) Then
  2412.                             WORD004 = 50
  2413.                             Gosub LABEL114
  2414.                             BOOLEAN018 = 1
  2415.                             FClose 1
  2416.                             FClose 2
  2417.                             If (BOOLEAN027) Log STRING010 + "-" + STRING011 + "-" + STRING020 + " " + STRING029, 0
  2418.                             Break
  2419.                         Endif
  2420.                         Goto LABEL088
  2421.                     Endif
  2422.                     If (STRING022 == STRING017 + STRING006 + STRING007) Then
  2423.                         WORD004 = 50
  2424.                         Gosub LABEL114
  2425.                         BOOLEAN018 = 1
  2426.                         FClose 1
  2427.                         FClose 2
  2428.                         If (BOOLEAN027) Log STRING017 + "-" + STRING006 + "-" + STRING007 + " " + STRING029, 0
  2429.                         Break
  2430.                     Endif
  2431.                 Endif
  2432.                 :LABEL088
  2433.                 Gosub LABEL116
  2434.                 Inc INTEGER012
  2435.             EndWhile
  2436.             Color 7
  2437.             FClose 1
  2438.             FClose 2
  2439.             Newline
  2440.             PrintLn 
  2441.             Dec INTEGER012
  2442.             Log "EDSBack Used # File (Scanned: " + String(INTEGER012) + "  Searched: " + String(INTEGER007) + ")", 0
  2443.             Goto LABEL089
  2444.         Endif
  2445.         PrintLn 
  2446.         PrintLn 
  2447.         PrintLn "@X0CYour SysOp has not yet created the trash index file..."
  2448.         PrintLn "@X0ANotifying SysOp of this problem..."
  2449.         PrintLn 
  2450.         PrintLn "@X0FEDSBACK HALTING: INDEX FILE NOT PRESENT"
  2451.         Log "EDSBack Trash Index file not present...  PLEASE CREATE!", 1
  2452.         FClose 1
  2453.         FClose 2
  2454.         Goto LABEL118
  2455.     Endif
  2456.     :LABEL089
  2457.     If (BOOLEAN018) Goto LABEL091
  2458.     For INTEGER006 = 0 To 5
  2459.         TSTRING025(INTEGER006) = ""
  2460.         TTIME002(INTEGER006) = 0
  2461.         TDATE004(INTEGER006) = 0
  2462.     Next
  2463.     If (Exist(PPEPath() + "EDSSTATS.DAT")) Then
  2464.         INTEGER007 = FileInf(PPEPath() + "EDSSTATS.DAT", 4)
  2465.         FOpen 1, PPEPath() + "EDSSTATS.DAT", 0, 0
  2466.         If (Ferr(1)) Then
  2467.             BOOLEAN019 = 1
  2468.             Goto LABEL090
  2469.         Endif
  2470.         BOOLEAN019 = 0
  2471.         :LABEL090
  2472.         If (BOOLEAN019) Then
  2473.             OpText "EDSSTATS.DAT"
  2474.             WORD004 = 9
  2475.             Gosub LABEL114
  2476.             If (BOOLEAN027) DispStr STRING029
  2477.             WORD004 = 8
  2478.             Gosub LABEL114
  2479.             If (BOOLEAN027) Log STRING029 + " EDSSTATS.DAT", 0
  2480.             WORD004 = 27
  2481.             Gosub LABEL114
  2482.             If (BOOLEAN027) Log STRING029, 0
  2483.             FClose 1
  2484.             Return
  2485.         Endif
  2486.         FSeek 1, 47, 0
  2487.         FRead 1, INTEGER011, 4
  2488.         FSeek 1, 8, 1
  2489.         For INTEGER006 = 0 To 5
  2490.             FRead 1, TSTRING025(INTEGER006), 25
  2491.             FRead 1, TDATE004(INTEGER006), 2
  2492.             FRead 1, TTIME002(INTEGER006), 4
  2493.         Next
  2494.         FClose 1
  2495.     Endif
  2496.     For INTEGER006 = 0 To 5
  2497.         If (Trim(TSTRING025(INTEGER006), " ") == "") Then
  2498.             TSTRING025(INTEGER006) = " N/A"
  2499.             TDATE004(INTEGER006) = 0
  2500.             TTIME002(INTEGER006) = 0
  2501.         Endif
  2502.     Next
  2503.     :LABEL091
  2504.     Return
  2505.     :LABEL092
  2506.     If (!Exist(TSTRING027(2))) Return
  2507.     INTEGER003 = FileInf(TSTRING027(2), 4)
  2508.     INTEGER006 = (INTEGER003 - 39) / 28
  2509.     INTEGER010 = 1
  2510.     FOpen 1, TSTRING027(2), 0, 0
  2511.     If (Ferr(1)) Then
  2512.         BOOLEAN019 = 1
  2513.     Else
  2514.         BOOLEAN019 = 0
  2515.     Endif
  2516.     If (BOOLEAN019) Then
  2517.         OpText TSTRING027(2)
  2518.         WORD004 = 9
  2519.         Gosub LABEL114
  2520.         If (BOOLEAN027) DispStr STRING029
  2521.         WORD004 = 8
  2522.         Gosub LABEL114
  2523.         If (BOOLEAN027) Log STRING029 + " " + TSTRING027(2) , 0
  2524.         WORD004 = 27
  2525.         Gosub LABEL114
  2526.         If (BOOLEAN027) Log STRING029, 0
  2527.         FClose 1
  2528.         Goto LABEL118
  2529.     Endif
  2530.     FDefIn 1
  2531.     While (INTEGER010 <= INTEGER006) Do
  2532.         FSeek 1, 39 + INTEGER010 * 28 - 28, 0
  2533.         FDRead BOOLEAN003, 1
  2534.         If (BOOLEAN003) Goto LABEL093
  2535.         FDRead WORD007, 2
  2536.         If ((WORD007 == PcbNode()) || (WORD007 == 0)) Then
  2537.             FDRead STRING008, 25
  2538.             STRING008 = Upper(Trim(STRING008, " "))
  2539.             If (InStr(Upper(U_Name()), STRING008) <> 0) Then
  2540.                 WORD004 = 22
  2541.                 Gosub LABEL114
  2542.                 If (BOOLEAN027) DispStr STRING029
  2543.                 WORD004 = 23
  2544.                 Gosub LABEL114
  2545.                 If (BOOLEAN027) Log STRING029, 0
  2546.                 WORD004 = 31
  2547.                 Gosub LABEL114
  2548.                 If (BOOLEAN027) DispStr STRING029
  2549.                 FClose 1
  2550.                 STRING008 = ""
  2551.             Else
  2552.                 :LABEL093
  2553.                 Inc INTEGER010
  2554.             EndWhile
  2555.             FClose 1
  2556.             STRING008 = ""
  2557.             Return
  2558.             :LABEL094
  2559.             If (!Exist(TSTRING027(9))) Return
  2560.             INTEGER003 = FileInf(TSTRING027(9), 4)
  2561.             INTEGER006 = (INTEGER003 - 39) / 4
  2562.             INTEGER010 = 1
  2563.             FOpen 1, TSTRING027(9), 0, 0
  2564.             If (Ferr(1)) Then
  2565.                 BOOLEAN019 = 1
  2566.             Else
  2567.                 BOOLEAN019 = 0
  2568.             Endif
  2569.             If (BOOLEAN019) Then
  2570.                 OpText TSTRING027(9)
  2571.                 WORD004 = 9
  2572.                 Gosub LABEL114
  2573.                 If (BOOLEAN027) DispStr STRING029
  2574.                 WORD004 = 8
  2575.                 Gosub LABEL114
  2576.                 If (BOOLEAN027) Log STRING029 + " " + TSTRING027(9) , 0
  2577.                 WORD004 = 27
  2578.                 Gosub LABEL114
  2579.                 If (BOOLEAN027) Log STRING029, 0
  2580.                 FClose 1
  2581.                 Goto LABEL118
  2582.             Endif
  2583.             FDefIn 1
  2584.             While (INTEGER010 <= INTEGER006) Do
  2585.                 FSeek 1, 39 + INTEGER010 * 4 - 4, 0
  2586.                 FDRead BOOLEAN003, 1
  2587.                 If (BOOLEAN003) Goto LABEL095
  2588.                 FDRead WORD007, 2
  2589.                 If ((WORD007 == PcbNode()) || (WORD007 == 0)) Then
  2590.                     FDRead BYTE016, 1
  2591.                     If (U_Sec == BYTE016) Then
  2592.                         WORD004 = 22
  2593.                         Gosub LABEL114
  2594.                         If (BOOLEAN027) DispStr STRING029
  2595.                         WORD004 = 23
  2596.                         Gosub LABEL114
  2597.                         If (BOOLEAN027) Log STRING029, 0
  2598.                         WORD004 = 31
  2599.                         Gosub LABEL114
  2600.                         If (BOOLEAN027) DispStr STRING029
  2601.                         FClose 1
  2602.                     Else
  2603.                         :LABEL095
  2604.                         Inc INTEGER010
  2605.                     EndWhile
  2606.                     FClose 1
  2607.                     Return
  2608.                     :LABEL096
  2609.                     INTEGER006 = 0
  2610.                     INTEGER010 = 0
  2611.                     STRING009 = ""
  2612.                     STRING009 = Strip(Upper(STRING013), " ")
  2613.                     For INTEGER010 = 1 To Len(STRING009)
  2614.                         INTEGER006 = INTEGER006 + Asc(Mid(STRING009, INTEGER010, 1))
  2615.                     Next
  2616.                     INTEGER006 = INTEGER006 + 5427
  2617.                     Inc INTEGER006
  2618.                     INTEGER010 = INTEGER006 / 2
  2619.                     INTEGER006 = INTEGER010 + INTEGER006
  2620.                     INTEGER006 = INTEGER006 + Len(STRING009)
  2621.                     INTEGER010 = INTEGER008
  2622.                     INTEGER006 = INTEGER006 + INTEGER010
  2623.                     INTEGER006 = INTEGER006 + INTEGER009
  2624.                     INTEGER006 = INTEGER006 - 34
  2625.                     BOOLEAN015 = 0
  2626.                     If (INTEGER004 == INTEGER006) Then
  2627.                         BOOLEAN015 = 1
  2628.                     Else
  2629.                         BOOLEAN015 = 0
  2630.                     Endif
  2631.                     If (BOOLEAN015) Goto LABEL097
  2632.                     Cls
  2633.                     PrintLn "@X0AEDSBack v1.21b    @X0FCopyright (@X07c@X0F) 1994 by GO/4 Software"
  2634.                     PrintLn 
  2635.                     Print "@X0CUNREGISTERED @X07delaying @X0E10"
  2636.                     Backup 2
  2637.                     INTEGER006 = 9
  2638.                     While ((INTEGER006 < 10) && (INTEGER006 >= 0)) Do
  2639.                         Delay 18
  2640.                         Print String(INTEGER006) + " "
  2641.                         Dec INTEGER006
  2642.                         Backup 2
  2643.                     EndWhile
  2644.                     PrintLn 
  2645.                     :LABEL097
  2646.                     Return
  2647.                     :LABEL098
  2648.                     INTEGER003 = FileInf(PPEPath() + "EDSDIAL.PLT", 4)
  2649.                     INTEGER006 = (INTEGER003 - 41) / 28
  2650.                     INTEGER010 = 1
  2651.                     FSeek 2, 41, 0
  2652.                     While (INTEGER010 <= INTEGER006) Do
  2653.                         FRead 2, BOOLEAN003, 1
  2654.                         FRead 2, BOOLEAN026, 1
  2655.                         For BYTE016 = 0 To 5
  2656.                             FRead 2, TBYTE021(BYTE016), 1
  2657.                         Next
  2658.                         FRead 2, STRING008, 10
  2659.                         FRead 2, BYTE001, 1
  2660.                         FRead 2, BYTE002, 1
  2661.                         FRead 2, WORD006, 2
  2662.                         STRING008 = Trim(STRING008, " ")
  2663.                         FSeek 2, 6, 1
  2664.                         If (BOOLEAN003) Goto LABEL099
  2665.                         If (STRING008 == STRING018) Then
  2666.                             BOOLEAN014 = 0
  2667.                             If (BOOLEAN026) Then
  2668.                                 BOOLEAN013 = 1
  2669.                             Else
  2670.                                 BOOLEAN013 = 0
  2671.                             Endif
  2672.                             If (BOOLEAN008) BOOLEAN013 = 0
  2673.                             If (WORD006 <> 0) DATE002 = Date() + WORD006
  2674.                             Return
  2675.                         Else
  2676.                             BOOLEAN014 = 1
  2677.                         Endif
  2678.                         :LABEL099
  2679.                         Inc INTEGER010
  2680.                     EndWhile
  2681.                     Return
  2682.                     :LABEL100
  2683.                     PrintLn 
  2684.                     Select Case (BYTE019)
  2685.                         Case 1
  2686.                             STRING009 = TSTRING027(8)
  2687.                         Case 2
  2688.                             STRING009 = PPEPath() + Mid(STRING018, 1, 8) + ".TBL"
  2689.                             STRING009 = Strip(Upper(STRING009), " ")
  2690.                     End Select
  2691.                     If (Exist(STRING009)) Then
  2692.                         INTEGER003 = FileInf(STRING009, 4)
  2693.                         INTEGER006 = (INTEGER003 - 43) / 25
  2694.                         FOpen 1, STRING009, 0, 0
  2695.                         If (Ferr(1)) Then
  2696.                             BOOLEAN019 = 1
  2697.                             Goto LABEL101
  2698.                         Endif
  2699.                         BOOLEAN019 = 0
  2700.                         :LABEL101
  2701.                         If (BOOLEAN019) Then
  2702.                             OpText STRING009
  2703.                             WORD004 = 9
  2704.                             Gosub LABEL114
  2705.                             If (BOOLEAN027) DispStr STRING029
  2706.                             WORD004 = 8
  2707.                             Gosub LABEL114
  2708.                             If (BOOLEAN027) Log STRING029 + " " + STRING009, 0
  2709.                             WORD004 = 27
  2710.                             Gosub LABEL114
  2711.                             If (BOOLEAN027) Log STRING029, 0
  2712.                             FClose 1
  2713.                             Goto LABEL118
  2714.                         Endif
  2715.                         BOOLEAN021 = 0
  2716.                         BOOLEAN022 = 0
  2717.                         INTEGER010 = 1
  2718.                         FDefIn 1
  2719.                         FSeek 1, 43, 0
  2720.                         While (!BOOLEAN021 && (INTEGER010 <= INTEGER006)) Do
  2721.                             FDRead BOOLEAN003, 1
  2722.                             FDRead WORD007, 2
  2723.                             FDRead DATE006, 2
  2724.                             FDRead TIME004, 4
  2725.                             FDRead DATE007, 2
  2726.                             FDRead TIME005, 4
  2727.                             FSeek 1, 10, 1
  2728.                             If ((!BOOLEAN003 && ((PcbNode() == WORD007) || (WORD007 == 0))) && (DATE006 + DATE007 + TIME004 + TIME005 <> 0)) Then
  2729.                                 If (DATE006 == 0) DATE005 = Date()
  2730.                                 If (DATE007 == 0) DATE008 = Date()
  2731.                                 If (DATE005 <= Date()) Then
  2732.                                     If (DATE008 >= Date()) Then
  2733.                                         TIME003 = Time()
  2734.                                         If (TIME004 <= TIME003) Then
  2735.                                             If (TIME005 > TIME003) Then
  2736.                                                 BOOLEAN021 = 1
  2737.                                                 BOOLEAN022 = 1
  2738.                                             Endif
  2739.                                         Endif
  2740.                                     Endif
  2741.                                 Endif
  2742.                             Endif
  2743.                             Inc INTEGER010
  2744.                         EndWhile
  2745.                         FClose 1
  2746.                     Endif
  2747.                     Return
  2748.                     :LABEL102
  2749.                     If (Exist(PPEPath() + "EDSBACK.CAL")) Then
  2750.                         FAppend 1, PPEPath() + "EDSBACK.CAL", 1, 2
  2751.                         If (Ferr(1)) Then
  2752.                             BOOLEAN019 = 1
  2753.                         Else
  2754.                             BOOLEAN019 = 0
  2755.                         Endif
  2756.                         If (BOOLEAN019) Then
  2757.                             OpText PPEPath() + "EDSBACK.CAL"
  2758.                             WORD004 = 9
  2759.                             Gosub LABEL114
  2760.                             If (BOOLEAN027) DispStr STRING029
  2761.                             WORD004 = 8
  2762.                             Gosub LABEL114
  2763.                             If (BOOLEAN027) Log STRING029 + " " + PPEPath() + "EDSBACK.CAL", 0
  2764.                             WORD004 = 27
  2765.                             Gosub LABEL114
  2766.                             If (BOOLEAN027) Log STRING029, 0
  2767.                             Log "USER WAS CALLED BACK IN CBONLY MODE!", 0
  2768.                             FClose 1
  2769.                             Goto LABEL118
  2770.                         Endif
  2771.                     Else
  2772.                         FCreate 1, PPEPath() + "EDSBACK.CAL", 1, 2
  2773.                         If (Ferr(1)) Then
  2774.                             BOOLEAN019 = 1
  2775.                         Else
  2776.                             BOOLEAN019 = 0
  2777.                         Endif
  2778.                         If (BOOLEAN019) Then
  2779.                             OpText PPEPath() + "EDSBACK.CAL"
  2780.                             WORD004 = 9
  2781.                             Gosub LABEL114
  2782.                             If (BOOLEAN027) DispStr STRING029
  2783.                             WORD004 = 8
  2784.                             Gosub LABEL114
  2785.                             If (BOOLEAN027) Log STRING029 + " " + PPEPath() + "EDSBACK.CAL", 0
  2786.                             WORD004 = 27
  2787.                             Gosub LABEL114
  2788.                             If (BOOLEAN027) Log STRING029, 0
  2789.                             Log "USER WAS CALLED BACK IN CBONLY MODE!", 0
  2790.                             FClose 1
  2791.                             Goto LABEL118
  2792.                         Endif
  2793.                         FPutLn 1, "EDSBack v1.21b Call-Back Only Mode Log"
  2794.                         FPutLn 1, "Log created at " + String(Time()) + " on " + String(Date())
  2795.                         FPutLn 1, "----------------------------------------------------------------"
  2796.                         FPutLn 1
  2797.                     Endif
  2798.                     FPutLn 1, U_Name() + " at " + String(Time()) + " on " + String(Date())
  2799.                     If (BOOLEAN017 && BOOLEAN012) Then
  2800.                         FPutLn 1, "Number called: " + STRING017 + "-" + STRING006 + "-" + STRING007
  2801.                     Else
  2802.                         FPutLn 1, "Number called: " + STRING010 + "-" + STRING011 + "-" + STRING020
  2803.                     Endif
  2804.                     FPutLn 1, "----------------------------------------------------------------"
  2805.                     FClose 1
  2806.                     Return
  2807.                     :LABEL103
  2808.                     BOOLEAN033 = 0
  2809.                     If (Exist(PPEPath() + "EDSCID.CFG")) Then
  2810.                         BOOLEAN033 = 1
  2811.                         FOpen 1, PPEPath() + "EDSCID.CFG", 0, 0
  2812.                         FGet 1, STRING008
  2813.                         FGet 1, STRING009
  2814.                         BYTE024 = S2I(STRING009, 10)
  2815.                         FGet 1, STRING009
  2816.                         WORD010 = S2I(STRING009, 10)
  2817.                         FGet 1, STRING009
  2818.                         BYTE023 = S2I(STRING009, 10)
  2819.                         FClose 1
  2820.                         STRING008 = Trim(STRING008, " ")
  2821.                         If (STRING008 <> "") Then
  2822.                             FOpen 1, STRING008, 0, 0
  2823.                             FDefIn 1
  2824.                             STRING008 = ""
  2825.                             :LABEL104
  2826.                             If (Ferr(1)) Goto LABEL105
  2827.                             FDGet STRING008
  2828.                             STRING008 = Strip(Strip(Strip(Strip(Strip(STRING008, " "), ")"), "("), "-"), "+")
  2829.                             If (STRING008 <> "") Gosub LABEL106
  2830.                             Goto LABEL104
  2831.                             :LABEL105
  2832.                             FClose 1
  2833.                         Else
  2834.                             STRING008 = CallId()
  2835.                             STRING008 = Strip(Strip(Strip(Strip(Strip(STRING008, " "), ")"), "("), "-"), "+")
  2836.                             Gosub LABEL106
  2837.                         Endif
  2838.                     Else
  2839.                         STRING008 = CallId()
  2840.                         STRING008 = Strip(Strip(Strip(Strip(Strip(STRING008, " "), ")"), "("), "-"), "+")
  2841.                         Gosub LABEL106
  2842.                     Endif
  2843.                     :LABEL106
  2844.                     STRING009 = ""
  2845.                     If ((InStr(STRING008, STRING022) <> 0) || (InStr(STRING008, STRING021) <> 0)) Then
  2846.                         WORD004 = 64
  2847.                         Gosub LABEL114
  2848.                         DispStr STRING029
  2849.                         If (!OnLocal() || BOOLEAN004) Then
  2850.                             WORD004 = 7
  2851.                             Gosub LABEL114
  2852.                             If (BOOLEAN027) DispStr STRING029
  2853.                             If (BOOLEAN033) Goto LABEL107
  2854.                             If (BYTE007 <> 0) U_Sec = BYTE007
  2855.                             If (DATE009 <> 0) U_ExpDate = DATE009
  2856.                             If (BYTE008 <> 0) U_ExpSec = BYTE008
  2857.                             Goto LABEL108
  2858.                             :LABEL107
  2859.                             If (BYTE024 <> 0) U_Sec = BYTE024
  2860.                             If (WORD010 <> 0) U_ExpDate = Date() + WORD010
  2861.                             If (BYTE023 <> 0) U_ExpSec = BYTE023
  2862.                             :LABEL108
  2863.                             PutUser
  2864.                             While (EvtTimeAdj()) Goto LABEL110
  2865.                             If (BOOLEAN016) Then
  2866.                                 AdjTime INTEGER005
  2867.                                 Goto LABEL109
  2868.                             Endif
  2869.                             AdjTime INTEGER005 - MinLeft()
  2870.                             :LABEL109
  2871.                             Goto LABEL111
  2872.                             :LABEL110
  2873.                             WORD004 = 40
  2874.                             Gosub LABEL114
  2875.                             If (BOOLEAN027) Log STRING029, 0
  2876.                             WORD004 = 34
  2877.                             Gosub LABEL114
  2878.                             If (BOOLEAN027) DispStr STRING029
  2879.                             :LABEL111
  2880.                             AdjDBytes INTEGER015
  2881.                             AdjTBytes INTEGER016
  2882.                             AdjTFiles WORD009
  2883.                             WORD004 = 29
  2884.                             Gosub LABEL114
  2885.                             If (BOOLEAN027) DispStr STRING029
  2886.                             If ((TSTRING027(10) <> "") && (TSTRING027(10) <> "NONE")) Then
  2887.                                 OpText FileInf(TSTRING027(10), 8)
  2888.                                 WORD004 = 33
  2889.                                 Gosub LABEL114
  2890.                                 If (BOOLEAN027) DispStr STRING029
  2891.                                 Flag TSTRING027(10)
  2892.                                 WORD004 = 41
  2893.                                 Gosub LABEL114
  2894.                                 If (BOOLEAN027) Log STRING029 + " " + FileInf(TSTRING027(10), 8) , 0
  2895.                                 Delay 9
  2896.                                 If (BOOLEAN029) Download ""
  2897.                             Endif
  2898.                             WORD004 = 31
  2899.                             Gosub LABEL114
  2900.                             If (BOOLEAN027) DispStr STRING029
  2901.                         Endif
  2902.                         WORD004 = 65
  2903.                         Gosub LABEL114
  2904.                         Log STRING029, 0
  2905.                         FClose 1
  2906.                     Else
  2907.                         Return
  2908.                         :LABEL112
  2909.                         STRING008 = Upper(GetEnv("EDSBACK"))
  2910.                         BOOLEAN030 = 0
  2911.                         BOOLEAN031 = 0
  2912.                         BOOLEAN032 = 0
  2913.                         If (InStr(STRING008, "/LOCALONLY")) Then
  2914.                             If (OnLocal()) Goto LABEL113
  2915.                             PrintLn 
  2916.                             PrintLn "@X0CSorry, only local callers allowed on this node..."
  2917.                             PrintLn 
  2918.                             Wait
  2919.                         Else
  2920.                             :LABEL113
  2921.                             If (InStr(STRING008, "/ALERT")) BOOLEAN030 = 1
  2922.                             If (InStr(STRING008, "/NOINFO")) BOOLEAN031 = 1
  2923.                             If (InStr(STRING008, "/BYPASS")) BOOLEAN032 = 1
  2924.                             STRING008 = ""
  2925.                             Return
  2926.                             :LABEL114
  2927.                             FSeek 5, 39 + WORD004 * 97 - 97, 0
  2928.                             FSeek 5, 1, 1
  2929.                             FRead 5, BOOLEAN027, 1
  2930.                             FRead 5, STRING012, 4
  2931.                             FRead 5, STRING029, 75
  2932.                             FRead 5, BOOLEAN028, 1
  2933.                             If (BOOLEAN028) PrintLn 
  2934.                             Return
  2935.                             :LABEL115
  2936.                             Color 1
  2937.                             SPrint Chr(27) + "[2J"
  2938.                             SPrint " "
  2939.                             Print "@POFF@"
  2940.                             Color 16
  2941.                             SPrint "┌────────────────────────────────────────────────────────────────────────────"
  2942.                             Color 25
  2943.                             SPrint "┐"
  2944.                             Color 1
  2945.                             SPrintLn 
  2946.                             SPrint " "
  2947.                             Color 16
  2948.                             SPrint "│ "
  2949.                             Color 30
  2950.                             SPrint "Caller : "
  2951.                             Color 27
  2952.                             SPrint Left(Upper(U_Name()) + Space(29), 29)
  2953.                             Color 30
  2954.                             SPrint "From : "
  2955.                             Color 27
  2956.                             SPrint Left(Upper(U_City) + Space(30), 30)
  2957.                             Color 25
  2958.                             SPrint "│"
  2959.                             Color 1
  2960.                             SPrintLn 
  2961.                             SPrint " "
  2962.                             Color 16
  2963.                             SPrint "│ "
  2964.                             Color 30
  2965.                             SPrint "Upgraded Lvl : "
  2966.                             Color 27
  2967.                             If (BYTE001 <> 0) Then
  2968.                                 STRING008 = String(BYTE001)
  2969.                             Else
  2970.                                 STRING008 = "N/A"
  2971.                             Endif
  2972.                             SPrint Left(STRING008 + Space(23), 23)
  2973.                             Color 30
  2974.                             SPrint "New Exp. Date : "
  2975.                             Color 27
  2976.                             SPrint Left(String(DATE002) + Space(21), 21)
  2977.                             Color 25
  2978.                             SPrint "│"
  2979.                             Color 1
  2980.                             SPrintLn 
  2981.                             SPrint " "
  2982.                             Color 16
  2983.                             SPrint "│ "
  2984.                             Color 30
  2985.                             SPrint "Password: "
  2986.                             Color 27
  2987.                             SPrint Left(U_Pwd + Space(28), 28)
  2988.                             Color 30
  2989.                             SPrint "Node : "
  2990.                             Color 27
  2991.                             SPrint Left(PcbNode() + Space(30), 30)
  2992.                             Color 25
  2993.                             SPrint "│"
  2994.                             Color 1
  2995.                             SPrintLn 
  2996.                             SPrint " "
  2997.                             Color 16
  2998.                             SPrint "│                                                                            "
  2999.                             Color 25
  3000.                             SPrint "│"
  3001.                             Color 1
  3002.                             SPrintLn 
  3003.                             SPrint " "
  3004.                             Color 16
  3005.                             SPrint "│   "
  3006.                             Color 25
  3007.                             SPrint "┌────────────────────────────────────────────────────────────────────"
  3008.                             Color 16
  3009.                             SPrint "┐   "
  3010.                             Color 25
  3011.                             SPrint "│"
  3012.                             Color 1
  3013.                             SPrintLn 
  3014.                             SPrint " "
  3015.                             Color 16
  3016.                             SPrint "│   "
  3017.                             Color 25
  3018.                             SPrint "│ "
  3019.                             Color 31
  3020.                             SPrint "Total # Callbacks: "
  3021.                             Color 27
  3022.                             SPrint Left(String(INTEGER011) + Space(13), 13)
  3023.                             Color 31
  3024.                             SPrint "Delaying : "
  3025.                             Color 27
  3026.                             SPrint "No   "
  3027.                             Color 31
  3028.                             SPrint "Date    : "
  3029.                             Color 27
  3030.                             SPrint Left(String(Date()) + Space(9), 9)
  3031.                             Color 16
  3032.                             SPrint "│   "
  3033.                             Color 25
  3034.                             SPrint "│"
  3035.                             Color 1
  3036.                             SPrintLn 
  3037.                             SPrint " "
  3038.                             Color 16
  3039.                             SPrint "│   "
  3040.                             Color 25
  3041.                             SPrint "│ "
  3042.                             Color 31
  3043.                             SPrint "Dialing Template : "
  3044.                             Color 27
  3045.                             SPrint Left(STRING018 + Space(15), 15)
  3046.                             Color 31
  3047.                             SPrint "Logoff : "
  3048.                             Color 27
  3049.                             If (BOOLEAN013) Then
  3050.                                 SPrint "Yes  "
  3051.                             Else
  3052.                                 SPrint "No   "
  3053.                             Endif
  3054.                             Color 31
  3055.                             SPrint "Overseas: "
  3056.                             Color 27
  3057.                             If (BOOLEAN012 && BOOLEAN017) Then
  3058.                                 SPrint "Yes      "
  3059.                             Else
  3060.                                 SPrint "No       "
  3061.                             Endif
  3062.                             Color 16
  3063.                             SPrint "│   "
  3064.                             Color 25
  3065.                             SPrint "│"
  3066.                             Color 1
  3067.                             SPrintLn 
  3068.                             SPrint " "
  3069.                             Color 16
  3070.                             SPrint "│   "
  3071.                             Color 25
  3072.                             SPrint "│ "
  3073.                             Color 31
  3074.                             SPrint "Comment(s) to add: "
  3075.                             Color 27
  3076.                             Select Case (BYTE011)
  3077.                                 Case 0
  3078.                                     SPrint "None         "
  3079.                                 Case 1
  3080.                                     SPrint "Date/Time    "
  3081.                                 Case 2
  3082.                                     SPrint "Phone #      "
  3083.                                 Case 3
  3084.                                     SPrint "Both (D/T/#) "
  3085.                             End Select
  3086.                             Color 31
  3087.                             SPrint " Message : "
  3088.                             Color 27
  3089.                             Select Case (BYTE010)
  3090.                                 Case 1
  3091.                                     SPrint "INT  "
  3092.                                 Case 2
  3093.                                     SPrint "EXT  "
  3094.                                 Case 3
  3095.                                     SPrint "None "
  3096.                             End Select
  3097.                             Color 27
  3098.                             If (BOOLEAN017 && BOOLEAN012) Then
  3099.                                 SPrint Left(STRING017 + "-" + STRING006 + "-" + STRING007 + Space(19), 19)
  3100.                             Else
  3101.                                 SPrint Left(STRING010 + "-" + STRING011 + "-" + STRING020 + Space(19), 19)
  3102.                             Endif
  3103.                             Color 16
  3104.                             SPrint "│   "
  3105.                             Color 25
  3106.                             SPrint "│"
  3107.                             Color 1
  3108.                             SPrintLn 
  3109.                             SPrint " "
  3110.                             Color 16
  3111.                             SPrint "│   "
  3112.                             Color 25
  3113.                             SPrint "│      "
  3114.                             Color 16
  3115.                             SPrint "┌─────────────────────────────────────────────────────────"
  3116.                             Color 25
  3117.                             SPrint "┐   "
  3118.                             Color 16
  3119.                             SPrint "│   "
  3120.                             Color 25
  3121.                             SPrint "│"
  3122.                             Color 1
  3123.                             SPrintLn 
  3124.                             SPrint " "
  3125.                             Color 16
  3126.                             SPrint "│   "
  3127.                             Color 25
  3128.                             SPrint "│"
  3129.                             Color 26
  3130.                             SPrint "ACTION"
  3131.                             Color 16
  3132.                             SPrint "│ "
  3133.                             Color 23
  3134.                             SPrint "Please wait, disconnecting caller...                    "
  3135.                             Color 25
  3136.                             SPrint "│   "
  3137.                             Color 16
  3138.                             SPrint "│   "
  3139.                             Color 25
  3140.                             SPrint "│"
  3141.                             Color 1
  3142.                             SPrintLn 
  3143.                             SPrint " "
  3144.                             Color 16
  3145.                             SPrint "│   "
  3146.                             Color 25
  3147.                             SPrint "│      "
  3148.                             Color 16
  3149.                             SPrint "└"
  3150.                             Color 25
  3151.                             SPrint "─────────────────────────────────────────────────────────┘   "
  3152.                             Color 16
  3153.                             SPrint "│   "
  3154.                             Color 25
  3155.                             SPrint "│"
  3156.                             Color 1
  3157.                             SPrintLn 
  3158.                             SPrint " "
  3159.                             Color 16
  3160.                             SPrint "│   "
  3161.                             Color 25
  3162.                             SPrint "│                "
  3163.                             Color 29
  3164.                             SPrint "Last 5 verifications                     "
  3165.                             Color 30
  3166.                             STRING008 = ReadLine(PCBDat(), 52)
  3167.                             STRING008 = Strip(STRING008, ":")
  3168.                             STRING008 = Strip(STRING008, " ")
  3169.                             If (STRING008 <> "NONE") Then
  3170.                                 If (Mid(STRING008, 1, 1) == "C") Then
  3171.                                     SPrint Mid(STRING008, 1, 3)
  3172.                                     SPrint " "
  3173.                                     SPrint Left(Mid(STRING008, 4, Len(STRING008) - 3) + Space(7), 7)
  3174.                                 Else
  3175.                                     Backup 1
  3176.                                     SPrint Mid(STRING008, 1, 4)
  3177.                                     SPrint " "
  3178.                                     SPrint Left(Mid(STRING008, 5, Len(STRING008) - 4) + Space(7), 7)
  3179.                                 Endif
  3180.                             Else
  3181.                                 SPrint "LOCAL      "
  3182.                             Endif
  3183.                             Color 16
  3184.                             SPrint "│   "
  3185.                             Color 25
  3186.                             SPrint "│"
  3187.                             Color 1
  3188.                             SPrintLn 
  3189.                             SPrint " "
  3190.                             Color 16
  3191.                             SPrint "│   "
  3192.                             Color 25
  3193.                             SPrint "│   "
  3194.                             Color 16
  3195.                             SPrint "┌───────────────────────────────────────────────"
  3196.                             Color 25
  3197.                             SPrint "┐ "
  3198.                             Color 16
  3199.                             SPrint "┌────────────"
  3200.                             Color 25
  3201.                             SPrint "┐ "
  3202.                             Color 16
  3203.                             SPrint "│   "
  3204.                             Color 25
  3205.                             SPrint "│"
  3206.                             Color 1
  3207.                             SPrintLn 
  3208.                             SPrint " "
  3209.                             Color 16
  3210.                             SPrint "│   "
  3211.                             Color 25
  3212.                             SPrint "│   "
  3213.                             Color 16
  3214.                             SPrint "│"
  3215.                             Color 28
  3216.                             SPrint Left(Trim(TSTRING025(5), " ") + Space(28), 28)
  3217.                             Color 30
  3218.                             SPrint String(TDATE004(5)) + Space(3)
  3219.                             Color 31
  3220.                             SPrint String(TTIME002(5))
  3221.                             Color 25
  3222.                             SPrint "│ "
  3223.                             Color 16
  3224.                             SPrint "│  "
  3225.                             Color 26
  3226.                             SPrint "CONNECT   "
  3227.                             Color 25
  3228.                             SPrint "│ "
  3229.                             Color 16
  3230.                             SPrint "│   "
  3231.                             Color 25
  3232.                             SPrint "│"
  3233.                             Color 1
  3234.                             SPrintLn 
  3235.                             SPrint " "
  3236.                             Color 16
  3237.                             SPrint "│   "
  3238.                             Color 25
  3239.                             SPrint "│   "
  3240.                             Color 16
  3241.                             SPrint "│"
  3242.                             Color 28
  3243.                             SPrint Left(Trim(TSTRING025(4), " ") + Space(28), 28)
  3244.                             Color 30
  3245.                             SPrint String(TDATE004(4)) + Space(3)
  3246.                             Color 31
  3247.                             SPrint String(TTIME002(4))
  3248.                             Color 25
  3249.                             SPrint "│ "
  3250.                             Color 16
  3251.                             SPrint "│   "
  3252.                             Color 28
  3253.                             STRING008 = ""
  3254.                             STRING008 = ReadLine(PCBDat(), 53)
  3255.                             STRING008 = Strip(STRING008, " ")
  3256.                             SPrint Left(STRING008 + Space(9), 9)
  3257.                             Color 25
  3258.                             SPrint "│ "
  3259.                             Color 16
  3260.                             SPrint "│   "
  3261.                             Color 25
  3262.                             SPrint "│"
  3263.                             Color 1
  3264.                             SPrintLn 
  3265.                             SPrint " "
  3266.                             Color 16
  3267.                             SPrint "│   "
  3268.                             Color 25
  3269.                             SPrint "│   "
  3270.                             Color 16
  3271.                             SPrint "│"
  3272.                             Color 28
  3273.                             SPrint Left(Trim(TSTRING025(3), " ") + Space(28), 28)
  3274.                             Color 30
  3275.                             SPrint String(TDATE004(3)) + Space(3)
  3276.                             Color 31
  3277.                             SPrint String(TTIME002(3))
  3278.                             Color 25
  3279.                             SPrint "│ "
  3280.                             Color 16
  3281.                             SPrint "│ "
  3282.                             Color 25
  3283.                             SPrint "────────── │ "
  3284.                             Color 16
  3285.                             SPrint "│   "
  3286.                             Color 25
  3287.                             SPrint "│"
  3288.                             Color 1
  3289.                             SPrintLn 
  3290.                             SPrint " "
  3291.                             Color 16
  3292.                             SPrint "│   "
  3293.                             Color 25
  3294.                             SPrint "│   "
  3295.                             Color 16
  3296.                             SPrint "│"
  3297.                             Color 28
  3298.                             SPrint Left(Trim(TSTRING025(2), " ") + Space(28), 28)
  3299.                             Color 30
  3300.                             SPrint String(TDATE004(2)) + Space(3)
  3301.                             Color 31
  3302.                             SPrint String(TTIME002(2))
  3303.                             Color 25
  3304.                             SPrint "│ "
  3305.                             Color 16
  3306.                             SPrint "│  "
  3307.                             Color 26
  3308.                             SPrint "CARRIER   "
  3309.                             Color 25
  3310.                             SPrint "│ "
  3311.                             Color 16
  3312.                             SPrint "│   "
  3313.                             Color 25
  3314.                             SPrint "│"
  3315.                             Color 1
  3316.                             SPrintLn 
  3317.                             SPrint " "
  3318.                             Color 16
  3319.                             SPrint "│   "
  3320.                             Color 25
  3321.                             SPrint "│   "
  3322.                             Color 16
  3323.                             SPrint "│"
  3324.                             Color 28
  3325.                             SPrint Left(Trim(TSTRING025(1), " ") + Space(28), 28)
  3326.                             Color 30
  3327.                             SPrint String(TDATE004(1)) + Space(3)
  3328.                             Color 31
  3329.                             SPrint String(TTIME002(1))
  3330.                             Color 25
  3331.                             SPrint "│ "
  3332.                             Color 16
  3333.                             SPrint "│   "
  3334.                             Color 28
  3335.                             SPrint Left(String(Carrier()) + Space(9), 9)
  3336.                             Color 25
  3337.                             SPrint "│ "
  3338.                             Color 16
  3339.                             SPrint "│   "
  3340.                             Color 25
  3341.                             SPrint "│"
  3342.                             Color 1
  3343.                             SPrintLn 
  3344.                             SPrint " "
  3345.                             Color 16
  3346.                             SPrint "│   "
  3347.                             Color 25
  3348.                             SPrint "│   "
  3349.                             Color 16
  3350.                             SPrint "└"
  3351.                             Color 25
  3352.                             SPrint "───────────────────────────────────────────────┘ "
  3353.                             Color 16
  3354.                             SPrint "└"
  3355.                             Color 25
  3356.                             SPrint "────────────┘ "
  3357.                             Color 16
  3358.                             SPrint "│   "
  3359.                             Color 25
  3360.                             SPrint "│"
  3361.                             Color 1
  3362.                             SPrintLn 
  3363.                             SPrint " "
  3364.                             Color 16
  3365.                             SPrint "│   "
  3366.                             Color 25
  3367.                             SPrint "└"
  3368.                             Color 16
  3369.                             SPrint "────────────────────────────────────────────────────────────────────┘   "
  3370.                             Color 25
  3371.                             SPrint "│"
  3372.                             Color 1
  3373.                             SPrintLn 
  3374.                             SPrint " "
  3375.                             Color 16
  3376.                             SPrint "│             "
  3377.                             Color 26
  3378.                             SPrint "EDSBack v1.21b  Copyright ("
  3379.                             Color 24
  3380.                             SPrint "c"
  3381.                             Color 26
  3382.                             SPrint ") 1994 by GO/4 Software            "
  3383.                             Color 25
  3384.                             SPrint "│"
  3385.                             Color 1
  3386.                             SPrintLn 
  3387.                             SPrint " "
  3388.                             Color 16
  3389.                             SPrint "└"
  3390.                             Color 25
  3391.                             SPrint "────────────────────────────────────────────────────────────────────────────┘"
  3392.                             Color 7
  3393.                             Return
  3394.                             :LABEL116
  3395.                             If ((INTEGER012 <> 0) && (INTEGER013 <> 0)) Then
  3396.                                 If (INTEGER012 == 1) Then
  3397.                                     BYTE022 = 0
  3398.                                     Goto LABEL117
  3399.                                 Endif
  3400.                                 BYTE022 = REAL001
  3401.                                 :LABEL117
  3402.                                 REAL001 = ToReal(INTEGER012) / ToReal(INTEGER013)
  3403.                                 REAL001 = FmtReal(REAL001 * 100, 1, 0)
  3404.                                 If (BYTE022 <> REAL001) Then
  3405.                                     Backup Len(String(BYTE022) + "%")
  3406.                                     Print String(REAL001) + "%"
  3407.                                 Endif
  3408.                             Endif
  3409.                             Return
  3410.                         Endif
  3411.                     Endif
  3412.                 Endif
  3413.             Endif
  3414.         Endif
  3415.     Endif
  3416.     :LABEL118
  3417.     Gosub LABEL119
  3418.     End
  3419.     :LABEL119
  3420.     FClose 5
  3421.     KeyFlush
  3422.     KbdChkOn
  3423.     Color DefColor()
  3424.     Cls
  3425.     Return
  3426.  
  3427. ;------------------------------------------------------------------------------
  3428. ;
  3429. ; Usage report (before postprocessing)
  3430. ;
  3431. ; ■ Statements used :
  3432. ;
  3433. ;    1       End
  3434. ;    6       Cls
  3435. ;    13      Wait
  3436. ;    258     Color 
  3437. ;    619     Goto 
  3438. ;    646     Let 
  3439. ;    29      Print 
  3440. ;    110     PrintLn 
  3441. ;    531     If 
  3442. ;    5       DispFile 
  3443. ;    5       FCreate 
  3444. ;    19      FOpen 
  3445. ;    1       FAppend 
  3446. ;    74      FClose 
  3447. ;    4       FGet 
  3448. ;    2       FPut 
  3449. ;    36      FPutLn 
  3450. ;    1       GetUser
  3451. ;    7       PutUser
  3452. ;    3       Delete 
  3453. ;    5       AdjTime 
  3454. ;    90      Log 
  3455. ;    7       InputStr 
  3456. ;    3       InputYN 
  3457. ;    205     Gosub 
  3458. ;    38      Return
  3459. ;    5       PromptStr 
  3460. ;    1       DtrOn
  3461. ;    1       DtrOff
  3462. ;    4       CdChkOn
  3463. ;    1       CdChkOff
  3464. ;    39      Delay 
  3465. ;    2       SendModem 
  3466. ;    23      Inc 
  3467. ;    3       Dec 
  3468. ;    4       Newline
  3469. ;    1       Newlines 
  3470. ;    1       GetToken 
  3471. ;    1       Shell 
  3472. ;    1       InputText 
  3473. ;    1       Call 
  3474. ;    13      Bye
  3475. ;    5       KbdChkOn
  3476. ;    1       KbdChkOff
  3477. ;    41      OpText 
  3478. ;    77      DispStr 
  3479. ;    2       RdUNet 
  3480. ;    15      WrUNet 
  3481. ;    4       Backup 
  3482. ;    2       FreshLine
  3483. ;    1       WrUSys
  3484. ;    1       RdUSys
  3485. ;    4       Message 
  3486. ;    1       SaveScrn
  3487. ;    2       RestScrn
  3488. ;    3       Sound 
  3489. ;    266     SPrint 
  3490. ;    37      SPrintLn 
  3491. ;    1       MPrint 
  3492. ;    2       MPrintLn 
  3493. ;    30      FSeek 
  3494. ;    40      FRead 
  3495. ;    41      FWrite 
  3496. ;    8       FDefIn 
  3497. ;    1       FDGet 
  3498. ;    69      FDRead 
  3499. ;    1       KbdFlush
  3500. ;    19      KeyFlush
  3501. ;    2       Flag 
  3502. ;    2       Download 
  3503. ;    2       AdjDBytes 
  3504. ;    2       AdjTBytes 
  3505. ;    2       AdjTFiles 
  3506. ;
  3507. ;
  3508. ; ■ Functions used :
  3509. ;
  3510. ;    1       +
  3511. ;    3       -
  3512. ;    8       *
  3513. ;    16      /
  3514. ;    634     +
  3515. ;    37      -
  3516. ;    133     ==
  3517. ;    58      <>
  3518. ;    30      <
  3519. ;    34      <=
  3520. ;    3       >
  3521. ;    51      >=
  3522. ;    372     !
  3523. ;    107     &&
  3524. ;    38      ||
  3525. ;    41      Len(
  3526. ;    50      Upper()
  3527. ;    48      Mid()
  3528. ;    42      Left()
  3529. ;    59      Space()
  3530. ;    22      Ferr()
  3531. ;    54      Chr()
  3532. ;    1       Asc()
  3533. ;    7       InStr()
  3534. ;    18      Trim()
  3535. ;    26      Date()
  3536. ;    24      Time()
  3537. ;    15      U_Name()
  3538. ;    4       NoChar()
  3539. ;    11      YesChar()
  3540. ;    1       Replace()
  3541. ;    73      Strip()
  3542. ;    101     String()
  3543. ;    1       Mask_Pwd()
  3544. ;    2       Mask_Ascii()
  3545. ;    4       PCBDat()
  3546. ;    60      PPEPath()
  3547. ;    28      PcbNode()
  3548. ;    4       ReadLine()
  3549. ;    8       OnLocal()
  3550. ;    14      UN_Stat()
  3551. ;    15      UN_Name()
  3552. ;    11      UN_City()
  3553. ;    2       MinLeft()
  3554. ;    1       GetEnv()
  3555. ;    2       CallId()
  3556. ;    20      Exist()
  3557. ;    19      S2I()
  3558. ;    4       Carrier()
  3559. ;    1       CDOn()
  3560. ;    6       LangExt()
  3561. ;    2       DefColor()
  3562. ;    12      Psa()
  3563. ;    29      FileInf()
  3564. ;    8       PPEName()
  3565. ;    3       KInkey()
  3566. ;    6       TempPath()
  3567. ;    2       MGetByte()
  3568. ;    5       ToReal()
  3569. ;    1       ToInt()
  3570. ;    2       EvtTimeAdj()
  3571. ;    2       FmtReal()
  3572. ;
  3573. ;------------------------------------------------------------------------------
  3574. ;
  3575. ; Analysis flags : WABMSCafdH
  3576. ;
  3577. ; W - Write user ■ 5
  3578. ;     Program writes a user record. Although this may be normal for a
  3579. ;     User Editor, it may also be a way to modify an account level.
  3580. ;     ■ Search for : PUTUSER
  3581. ;
  3582. ; A - Adjust online time remaining ■ 5
  3583. ;     Program modify the amount of online time remaining, this may
  3584. ;     be a way to bypass time limits
  3585. ;     ■ Search for : ADJTIME
  3586. ;
  3587. ; B - Brute hangup ■ 1
  3588. ;     Program hangup without notification. This may be a good way to
  3589. ;     disconnect a user, but if used randomly, may be very nasty
  3590. ;     ■ Search for : HANGUP, DTROFF
  3591. ;
  3592. ; M - Send text to modem only ■ 4
  3593. ;     Some informations are sent only to the modem, not to the local
  3594. ;     screen, this is a well known way to make stealth backdoors, Check!
  3595. ;     ■ Search for : SENDMODEM, MPRINT, MPRINTLN
  3596. ;
  3597. ; S - Shell to DOS ■ 5
  3598. ;     This may be normal if the PPE need to execute an external command,
  3599. ;     but may be actually anything... nasty (formating HD, rebooting,...)
  3600. ;     or usefull (sorting, maintenance,...). Check!
  3601. ;     ■ Search for : SHELL
  3602. ;
  3603. ; C - Call child PPE ■ 3
  3604. ;     This is usually normal, but may be a tricky way to launch some
  3605. ;     sysop-only commands.
  3606. ;     ■ Search for : CALL
  3607. ;
  3608. ; a - Adjust ratio ■ 4
  3609. ;     User's ratio is adjusted by changing the amount of files/bytes
  3610. ;     uploaded. This may be normal for a user editor.
  3611. ;     ■ Search for : ADJBYTES, ADJDBYTES, ADJTBYTES, ADJTFILES
  3612. ;
  3613. ; f - Flag files for download ■ 3
  3614. ;     This may be normal if a PPE needs to send some files, but since
  3615. ;     this statement allows flagging of any file on the hard disk, you
  3616. ;     have to be carefull. Check!
  3617. ;     ■ Search for : FLAG
  3618. ;
  3619. ; d - Access PCBOARD.DAT ■ 2
  3620. ;     Program gets the full pathname to PCBOARD.DAT, this may be usefull
  3621. ;     for many PPE so they can find various informations on the system
  3622. ;     (system paths, max number of lines in messages, ...) but it may also
  3623. ;     be a way to gather vital informations.
  3624. ;     ■ Search for : PCBDAT()
  3625. ;
  3626. ; H - Read Password or Password History ■ 5
  3627. ;     Program is reading the user's password or last password history
  3628. ;     This may be ok for a password manager, but it is very suspect. Check!
  3629. ;     ■ Search for : U_PWDHIST, U_PWD
  3630. ;
  3631. ;------------------------------------------------------------------------------
  3632. ;
  3633. ; Postprocessing report
  3634. ;
  3635. ;    21      For/Next
  3636. ;    25      While/EndWhile
  3637. ;    238     If/Then or If/Then/Else
  3638. ;    8       Select Case
  3639. ;
  3640. ;------------------------------------------------------------------------------
  3641. ;                 AEGiS Corp - Break the routines, code against the machines!
  3642. ;------------------------------------------------------------------------------
  3643.